支持受限网络、正向代理、私有 CA 与 SSH 堡垒机部署 Agent。 加固 Docker、systemd、Nginx、安装器、Release 校验与可信代理边界,并完善命令队列索引、前端安装向导及中英文运维文档。
2.9 KiB
sidebar_position, title, description
| sidebar_position | title | description |
|---|---|---|
| 1 | Installation | Install BackupX via Docker, prebuilt archive, or from source. |
Installation
BackupX ships as a single static binary. Three ways to install, pick the one that matches your environment.
Docker (recommended)
No cloning required.
docker run -d --name backupx \
-p 8340:8340 \
-v backupx-data:/app/data \
awuqing/backupx:latest
Or use docker compose:
services:
backupx:
image: awuqing/backupx:latest
container_name: backupx
restart: unless-stopped
ports:
- "8340:8340"
volumes:
- backupx-data:/app/data
# Mount host directories to back up (as needed):
# - /var/www:/mnt/www:ro
# - /etc/nginx:/mnt/nginx-conf:ro
environment:
- TZ=Asia/Shanghai
volumes:
backupx-data:
Images: awuqing/backupx — supports linux/amd64 and linux/arm64.
Prebuilt archive (bare metal)
Download from the Releases page and run the installer:
sha256sum -c backupx-v*-linux-amd64.tar.gz.sha256
tar xzf backupx-v*-linux-amd64.tar.gz && cd backupx-*
sudo ./install.sh # creates system user, installs to /opt/backupx, sets up systemd
The installer:
- Creates a
backupxsystem user - Installs the binary to
/opt/backupx/bin/backupxand the web console to/opt/backupx/web - Creates
/etc/backupx/config.yamlwith safe defaults - Installs and enables the
backupx.servicesystemd unit - Leaves Nginx unchanged unless
INSTALL_NGINX=1is explicitly requested - Waits for
/api/auth/setup/status; if startup fails, prints systemd diagnostics and exits non-zero
From source
Requires Go ≥ 1.25 and Node.js ≥ 20.
git clone https://github.com/Awuqing/BackupX.git && cd BackupX
make build
sudo ./deploy/install.sh
After make build, the binary is at server/bin/backupx and the built web UI is at web/dist/.
The installer consumes those exact paths, so no Docker runtime is required. If an existing configuration uses a non-default port, set HEALTH_URL for the readiness check, for example sudo HEALTH_URL=http://127.0.0.1:9000/api/auth/setup/status ./deploy/install.sh.
The Nginx template is opt-in because automatically installing a catch-all virtual host can intercept existing sites. Review deploy/nginx.conf, then use sudo INSTALL_NGINX=1 ./deploy/install.sh only when it matches the host.
Verify the install
/opt/backupx/bin/backupx --version
curl -fsS http://127.0.0.1:8340/api/auth/setup/status
Then open http://your-server:8340. Choose English or 中文 in the upper-right corner. A fresh database shows System setup, where you create the first administrator username and password. If that form does not appear, retry the status request above before attempting to sign in.