闲鱼管理系统 Docker 部署新手手册
本文适合第一次在 Linux 服务器上部署本项目的用户。项目地址:
https://github.com/GuDong2003/xianyu-auto-reply-fix
1. 服务器要求
推荐配置:
- 系统:Ubuntu 20.04/22.04/24.04 或 Debian 11/12
- CPU:2 核及以上
- 内存:2GB 及以上,推荐 4GB
- 硬盘:至少 10GB 可用空间
- 需要开放端口:
9000
项目 Docker 部署后默认访问地址:
http://服务器IP:9000
默认账号:
用户名:admin
密码:admin123
首次登录后请立即修改默认密码。
2. 登录服务器
在你自己的电脑终端中执行:
ssh root@你的服务器IP
如果不是 root 用户,请使用你的实际用户名:
ssh 用户名@你的服务器IP
3. 安装基础工具
Ubuntu/Debian 执行:
sudo apt update
sudo apt install -y git curl ca-certificates
4. 安装 Docker
推荐使用 Docker 官方安装脚本:
curl -fsSL https://get.docker.com | sudo sh
安装完成后检查版本:
docker --version
docker compose version
如果你不是 root 用户,建议把当前用户加入 Docker 用户组:
sudo usermod -aG docker $USER
然后退出 SSH,重新登录服务器。
5. 下载项目源码
cd /opt
sudo git clone https://github.com/GuDong2003/xianyu-auto-reply-fix.git
sudo chown -R $USER:$USER xianyu-auto-reply-fix
cd xianyu-auto-reply-fix
如果你使用 root 用户登录,也可以直接:
cd /opt
git clone https://github.com/GuDong2003/xianyu-auto-reply-fix.git
cd xianyu-auto-reply-fix
6. 创建运行目录
项目会把数据库、日志和备份文件保存到本地目录,避免容器删除后数据丢失。
mkdir -p data logs backups static/uploads/images
7. 修改默认密码和密钥
建议先创建 .env 文���,用来覆盖默认账号密码和密钥:
nano .env
写入以下内容,把密码和密钥改成你自己的:
ADMIN_USERNAME=admin
ADMIN_PASSWORD=请改成强密码
JWT_SECRET_KEY=请改成一串很长的随机字符串
TZ=Asia/Shanghai
MEMORY_LIMIT=2048
CPU_LIMIT=2.0
保存方法:
- 按
Ctrl + O - 回车
- 按
Ctrl + X
注意:如果数据库已经初始化过管理员账号,后来再改 .env 里的 ADMIN_PASSWORD 可能不会覆盖旧密码。第一次部署前改最稳妥。
8. 启动项目
项目根目录下已经提供 docker-compose.yml,直接执行:
docker compose up -d --build
第一次启动会构建镜像,时间可能比较久。构建过程会安装 Python 依赖、浏览器依赖、Playwright Chromium 等组件。
启动完成后查看容器状态:
docker compose ps
正常情况下可以看到 xianyu-auto-reply-fix 处于运行状态。
9. 访问后台
浏览器打开:
http://你的服务器IP:9000
API 文档地址:
http://你的服务器IP:9000/docs
健康检查地址:
http://你的服务器IP:9000/health
如果打不开,请检查服务器安全组、防火墙是否放行 9000 端口。
10. 常用管理命令
进入项目目录:
cd /opt/xianyu-auto-reply-fix
查看运行状态:
docker compose ps
查看日志:
docker compose logs -f xianyu-app
重启服务:
docker compose restart
停止服务:
docker compose down
重新构建并启动:
docker compose up -d --build
查看容器资源占用:
docker stats
11. 数据保存位置
这些目录很重要,不要随便删除:
data/ 数据库文件
logs/ 运行日志
backups/ 备份文件
其中主要数据库通常在:
data/xianyu_data.db
12. 手动备份
建议更新或重装前先备份:
cd /opt/xianyu-auto-reply-fix
BACKUP_DIR="backups/manual_$(date +%Y%m%d_%H%M%S)"
mkdir -p "$BACKUP_DIR"
cp -r data logs global_config.yml "$BACKUP_DIR"/
更简单的做法是直接打包:
cd /opt
tar -czf xianyu-backup-$(date +%Y%m%d_%H%M%S).tar.gz xianyu-auto-reply-fix/data xianyu-auto-reply-fix/logs xianyu-auto-reply-fix/global_config.yml
13. 更新项目
cd /opt/xianyu-auto-reply-fix
docker compose down
git pull
docker compose up -d --build
更新前建议先按上一节做备份。
14. 使用国内构建配置
如果服务器访问 Docker Hub 或国外源很慢,可以尝试项目自带的国内配置:
docker compose -f docker-compose-cn.yml up -d --build
国内配置默认访问端口一般是:
http://你的服务器IP:8000
具体以 docker-compose-cn.yml 中的 ports 配置为准。
15. 开启 Nginx 反向代理
项目的 docker-compose.yml 里带了一个可选 Nginx 服务,默认不启动。
如果你只是新手部署,建议先用:
http://服务器IP:9000
确认项目能跑起来后,再配置域名和 HTTPS。
如果要启动项目自带 Nginx:
docker compose --profile with-nginx up -d --build
启动后默认会占用服务器 80 和 443 端口。
16. 防火墙和安全组
云服务器需要在控制台安全组放行端口:
9000
如果启用了 Nginx,还需要放行:
80
443
Ubuntu 本机防火墙如果启用了 ufw,执行:
sudo ufw allow 9000/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
17. 常见问题
17.1 docker: command not found
说明 Docker 没安装成功。重新执行:
curl -fsSL https://get.docker.com | sudo sh
17.2 docker compose 命令不存在
先检查:
docker compose version
如果没有 Compose 插件,可以安装:
sudo apt update
sudo apt install -y docker-compose-plugin
17.3 访问不了后台
按顺序检查:
docker compose ps
docker compose logs -f xianyu-app
curl http://127.0.0.1:9000/health
如果服务器本机 curl 能访问,但外网不能访问,通常是安全组或防火墙没放行 9000。
17.4 端口 9000 被占用
编辑 docker-compose.yml:
nano docker-compose.yml
找到:
ports:
- "9000:8090"
比如改成:
ports:
- "19000:8090"
然后重新启动:
docker compose down
docker compose up -d
访问地址改为:
http://服务器IP:19000
17.5 容器启动失败
查看日志:
docker compose logs -f xianyu-app
常见修复方式:
docker compose down
docker compose build --no-cache
docker compose up -d
17.6 entrypoint.sh 报错
如果提示脚本格式或找不到文件,执行:
sed -i 's/\r$//' entrypoint.sh docker-deploy.sh start.sh stop.sh
docker compose down
docker compose up -d --build
18. 一键部署脚本方式
项目也提供了脚本:
chmod +x docker-deploy.sh
./docker-deploy.sh
脚本会询问是否使用国内镜像,然后自动构建和启动。
新手如果不想处理交互问题,推荐直接使用:
docker compose up -d --build
19. 部署完成后的第一件事
- 打开
http://服务器IP:9000 - 使用默认账号或你
.env中配置的账号登录 - 立即修改默认密码
- 确认
data/目录已经生成数据库文件 - 添加闲鱼账号前,先确认项目用途符合平台规则和当地法律法规