Skip to content

Commit faa0bb6

Browse files
authored
docs: update README (#35)
* docs: update README * feat: add auto backup * feat: add auto backup * feat: add database restore * fix: database operations in new docker-compose versions * docs: update README * docs: update README * docs: update README * docs: update README
1 parent 58d726f commit faa0bb6

File tree

2 files changed

+59
-13
lines changed

2 files changed

+59
-13
lines changed

README.md

+35-7
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
- [gost](https://github.com/ginuerzh/gost) ( AMD64 / ARM64 )
1010
- [ehco](https://github.com/Ehco1996/ehco) ( AMD64 / ARM64 )
1111
- [realm](https://github.com/zhboner/realm) ( AMD64 )
12-
- [v2ray](https://github.com/v2ray/v2ray-core) ( AMD64 )
12+
- [v2ray](https://github.com/v2fly/v2ray-core) ( AMD64 / ARM64 )
1313
- [brook](https://github.com/txthinking/brook) ( AMD64 / ARM64 )
1414
- [iperf](https://iperf.fr) ( AMD64 / ARM64 )
1515
- [wstunnel](https://github.com/erebe/wstunnel) ( AMD64 )
1616
- [shadowsocks](https://github.com/shadowsocks) ( AMD64 / ARM64 (only AEAD) )
17-
- [tinyPortMapper](https://github.com/wangyu-/tinyPortMapper) ( AMD64 / ARM64 )
18-
- [Prometheus Node Exporter](https://github.com/leishi1313/node_exporter) ( AMD64 )
17+
- [tinyPortMapper](https://github.com/wangyu-/tinyPortMapper) ( AMD64 / ARM64 )
18+
- [Prometheus Node Exporter](https://github.com/leishi1313/node_exporter) ( AMD64 / ARM64 )
1919

2020
### 面板服务器与被控机说明
2121

@@ -44,20 +44,25 @@
4444
- [x] CentOS 7+
4545
- [x] Debian 8+
4646
- [x] Ubuntu 18+
47-
- [ ] Alpine Linux 3.15.0+ (正在开发中,目前仅支持添加到面板,不支持任何转发功能)
47+
- [ ] Alpine Linux 3.15.0+ (正在开发中,目前仅支持部分 iptables 转发功能)
48+
- [x] 其他操作系统如果支持 docker,可以参考下面的手动安装方法
4849
- 虚拟平台
4950
- [x] KVM
5051
- [x] VMware
5152
- [x] OVZ
5253
- CPU 架构
5354
- [x] AMD64
5455
- [x] ARM64 (0.16.3+ 镜像版本支持,仅支持部分功能)
56+
- Linux init process
57+
- [x] systemd
58+
- [ ] SysVinit
59+
- [ ] OpenRC
5560

5661
## 怎么跑起来?
5762

5863
## 一键脚本(推荐)
5964

60-
目前已支持一键安装、更新(自动同步旧配置)、卸载面板以及备份数据库、添加超级管理员帐号、更换面板端口等操作。
65+
目前已支持一键安装、更新(自动同步旧配置)、卸载面板以及备份数据库、添加超级管理员帐号、更换面板端口等操作。**使用一键脚本安装后,如果仍需使用一脚脚本更新,请勿更改数据库用户名和密码,否则会使得更新后无法同步更改后的数据库用户名和密码,导致数据库连接出错。**
6166

6267
```shell
6368
bash <(curl -fsSL https://raw.githubusercontent.com/Aurora-Admin-Panel/deploy/main/install.sh)
@@ -67,7 +72,30 @@ bash <(curl -fsSL https://raw.githubusercontent.com/Aurora-Admin-Panel/deploy/ma
6772

6873
一键脚本默认从 Github 拉取所需的配置文件,如果是在国内机器安装,请检查连接 Github 的网络是否正常。一键脚本也支持更新测试版本,只需要添加 `--dev` 参数执行脚本即可,但是测试版本并不稳定,可能会出现各种问题,不建议在生产环境中使用。
6974

70-
## 手动安装
75+
## 手动安装 — 中转被控机
76+
77+
**对于不在中转机器(被控机)支持进度里面的系统版本,无法直接使用面板连接中转机器。** 如果被控机支持运行 docker,则可以利用被控机运行一个网络模式为 host 的特权 centos7 容器,并利用面板连接到 centos7 docker 中,实现转发功能的操作。(或可以参考 [aurora-client](https://github.com/smartcatboy/aurora-client) 直接编译被控端镜像运行)
78+
79+
```shell
80+
# 启动 centos 7 特权容器,设置网络模式为 host ,并设置为开机自启动
81+
sudo docker run -d --privileged --name aurora-client --network=host --restart=always -v /lib/modules:/lib/modules centos:7 /usr/sbin/init
82+
# 进入 centos 7 容器内
83+
sudo docker exec -it aurora-client bash
84+
# 在 docker 内安装 openssh 服务端,并修改容器的 ssh 端口(避免跟主机 ssh 服务冲突)
85+
yum makecache -y && yum install -y openssh-server
86+
sed -i "s/#Port 22/Port 62222/" /etc/ssh/sshd_config
87+
# 启用 ssh 服务
88+
systemctl enable --now sshd
89+
# 安装 iptables 转发必须的依赖
90+
yum install -y iproute
91+
# 为 root 账号设置密码
92+
passwd
93+
# 直接在面板添加中转机器 ip:62222 ,用户名 root ,密码为刚刚设置的密码
94+
# 卸载时候只需要在面板删除对应中转机,并删除 aurora-client 容器即可
95+
sudo docker stop aurora-client && sudo docker rm aurora-client
96+
```
97+
98+
## 手动安装 — 面板主控机
7199

72100
如果一键脚本提示不支持当前系统版本时,可以尝试使用手动安装的方式。
73101

@@ -145,7 +173,7 @@ docker-compose pull && docker-compose down --remove-orphans && docker-compose up
145173

146174
### 备份
147175
```shell
148-
docker-compose exec postgres pg_dump -d aurora -U [数据库用户名,默认aurora] -c > data.sql
176+
docker-compose exec -T postgres pg_dump -d aurora -U [数据库用户名,默认aurora] -c > data.sql
149177
```
150178

151179
### 恢复

install.sh

+24-6
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,9 @@ function update() {
210210
set_config
211211
set_port ${AURORA_DEF_PORT} $PORT
212212
echo -e "${Info} 同步新配置文件完成!"
213+
[[ -z $(docker ps | grep aurora | grep postgres) ]] && \
214+
echo -e "${Error} 请先运行极光面板,以保证更新前完成自动备份旧数据库!" && exit 1 || \
215+
(echo -e "${Tip} 正在备份旧数据库,如果更新后出现问题,请回退旧版本并恢复旧数据库!" && backup)
213216
docker-compose pull && docker-compose down --remove-orphans
214217
OLD_IMG_IDS=$(docker images | grep aurora | grep -v latest | awk '{ print $3; }')
215218
[[ -z $OLD_IMG_IDS ]] || (docker image rm $OLD_IMG_IDS && echo -e "${Info} 旧版镜像清理完成!")
@@ -270,20 +273,35 @@ function export_logs() {
270273
echo -e "${Info} 日志导出成功:${AURORA_HOME}/logs" || echo -e "${Error} 日志导出失败!"
271274
}
272275

273-
function backup() {
274-
check_install || exit 1
275-
[[ -z $(docker ps | grep aurora | grep postgres) ]] && echo -e "${Tip} 极光面板未在运行,请先启动!" && exit 1
276+
function read_db_info() {
276277
DB_USER=$(grep POSTGRES_USER ${AURORA_DOCKER_YML} | awk '{print $2}')
277278
[[ -z $DB_USER ]] && DB_USER="aurora"
278279
DB_NAME=$(grep POSTGRES_DB ${AURORA_DOCKER_YML} | awk '{print $2}')
279280
[[ -z $DB_NAME ]] && DB_NAME="aurora"
280-
cd ${AURORA_HOME} && docker-compose exec postgres pg_dump -d $DB_NAME -U $DB_USER -c > data.sql && \
281-
echo -e "${Info} 数据库导出成功:${AURORA_HOME}/data.sql" || echo -e "${Error} 数据库导出失败!"
281+
}
282+
283+
function backup() {
284+
check_install || exit 1
285+
[[ -z $(docker ps | grep aurora | grep postgres) ]] && echo -e "${Tip} 极光面板未在运行,请先启动!" && exit 1
286+
BACKUP_FILE="data-$(date +%Y%m%d%H%M%S).sql"
287+
read_db_info
288+
cd ${AURORA_HOME} && docker-compose exec -T postgres pg_dump -d $DB_NAME -U $DB_USER -c > $BACKUP_FILE && \
289+
echo -e "${Info} 数据库备份成功:${AURORA_HOME}/$BACKUP_FILE" || echo -e "${Error} 数据库备份失败!"
282290
}
283291

284292
function restore() {
285293
check_install || exit 1
286-
echo -e "${Tip} 高危操作,请手动执行!" && exit 0
294+
[[ -z $(docker ps | grep aurora | grep postgres) ]] && \
295+
echo -e "${Error} 请先运行极光面板,以保证还原前完成自动备份旧数据库!" && exit 1 || \
296+
(echo -e "${Tip} 正在备份旧数据库,如果还原后出现问题,请恢复旧数据库!" && backup)
297+
read -r -e -p "请输入需恢复的数据库文件路径: " BACKUP_FILE
298+
[[ ! -f $BACKUP_FILE ]] && echo -e "${Error} 无法找到数据库文件!" && exit 1
299+
cd ${AURORA_HOME}
300+
read_db_info
301+
docker stop $(docker-compose ps | grep aurora | grep -v postgres | awk '{ print $1; }') && \
302+
docker-compose exec -T postgres psql -d $DB_NAME -U $DB_USER < $BACKUP_FILE > /dev/null && \
303+
docker-compose up -d && \
304+
echo -e "${Info} 数据库还原成功!" || echo -e "${Error} 数据库还原失败!"
287305
}
288306

289307
function add_superu() {

0 commit comments

Comments
 (0)