🐳 新增Docker Compose部署方式(推荐)
对于追求简洁部署和便捷管理的用户,我们新增了Docker Compose部署方案,支持一键启动主容器+依赖服务(如数据库)。
1. 准备工作
确保已安装:
- Docker ≥ 20.10
- Docker Compose ≥ 2.0
- 已购买域名(可选,用于外网访问)
2. 部署步骤
方案一:标准版(单容器)
# docker-compose.yml
version: '3.8'
services:
xianyu-auto:
image: registry.cn-shanghai.aliyuncs.com/zhinian-software/xianyu-auto-reply:1.0
container_name: xianyu-auto-reply
restart: always
ports:
- "8080:8080"
volumes:
- ./xianyu-data:/app/data
environment:
- TZ=Asia/Shanghai
方案二:Pro版(含MySQL持久化)
version: '3.8'
services:
xianyu-auto:
image: registry.cn-shanghai.aliyuncs.com/zhinian-software/xianyu-auto-reply:1.0
container_name: xianyu-auto-reply
restart: always
ports:
- "8080:8080"
volumes:
- ./xianyu-data:/app/data
environment:
- DB_HOST=mysql
- DB_USER=root
- DB_PASS=your_password
- TZ=Asia/Shanghai
depends_on:
- mysql
mysql:
image: mysql:8.0
container_name: xianyu-mysql
restart: always
volumes:
- ./mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=your_password
- MYSQL_DATABASE=xianyu_db
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
3. 启动命令
# 创建项目目录
mkdir xianyu-auto && cd xianyu-auto
# 方案一:标准版
echo "版本: '3.8'
services:
xianyu-auto:
image: registry.cn-shanghai.aliyuncs.com/zhinian-software/xianyu-auto-reply:1.0
container_name: xianyu-auto-reply
restart: always
ports:
- \"8080:8080\"
volumes:
- ./xianyu-data:/app/data
environment:
- TZ=Asia/Shanghai" > docker-compose.yml
# 方案二:Pro版(复制上方YAML代码到文件)
# 启动服务
docker-compose up -d
# 检查状态
docker-compose ps
4. 配置说明
- 数据持久化:
- 标准版:数据存储在宿主机的
./xianyu-data
目录 - Pro版:MySQL数据存储在
./mysql_data
目录
- 环境变量:
TZ
:设置时区(推荐Asia/Shanghai)- Pro版需修改
DB_PASS
和MYSQL_ROOT_PASSWORD
为强密码
- 端口映射:
- 默认将容器内的8080端口映射到宿主机的8080端口
- 如需修改,请更改
ports
部分(如"80:8080"
)
🔧 系统核心功能配置
1. 初始设置
- 访问管理界面:
- 浏览器打开
http://<服务器IP>:8080
- 首次登录使用默认账号:
admin
/admin123
(务必修改密码)
- 关键配置路径:
- 配置文件:
./xianyu-data/config.json
- 日志文件:
./xianyu-data/logs/
- 数据库文件(标准版):
./xianyu-data/database.db
2. AI自动回复设置
- 进入「智能回复」模块
- 设置默认回复话术模板
- 配置关键词触发规则(如"价格"、"包邮"等)
- 可选接入第三方AI服务(需配置API密钥)
3. 自动发货配置
- 在「订单管理」中设置发货规则
- 配置自动发货模板(支持变量替换)
- 设置发货超时提醒(默认24小时)
4. QQ通知配置
- 申请QQ机器人账号
- 在「通知设置」中填写QQ号和API密钥
- 配置通知事件(新订单、咨询消息等)
⚡ 性能优化建议
1. 资源限制(Pro版)
# 在docker-compose.yml的service定义中添加
xianyu-auto:
deploy:
resources:
limits:
cpus: '1.0'
memory: 1024M
2. 日志轮转配置
# 在宿主机创建日志轮转配置
echo "/path/to/xianyu-data/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
copytruncate
}" > /etc/logrotate.d/xianyu-auto
3. 使用反向代理(Nginx示例)
server {
listen 80;
server_name xianyu.yourdomain.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
🛠 常见问题解决方案
Q1: 部署后无法访问管理界面?
- 检查防火墙是否放行8080端口:
sudo ufw allow 8080/tcp # Ubuntu
sudo firewall-cmd --add-port=8080/tcp --permanent # CentOS
- 检查容器日志:
docker-compose logs xianyu-auto
Q2: 如何升级到新版本?
# 1. 备份当前数据
docker-compose exec xianyu-auto tar -czvf /backup/xianyu_backup_$(date +%Y%m%d).tar.gz /app/data
# 2. 停止并删除旧容器
docker-compose down
# 3. 拉取新版本镜像
docker pull registry.cn-shanghai.aliyuncs.com/zhinian-software/xianyu-auto-reply:最新版本号
# 4. 重新启动
docker-compose up -d
Q3: 如何配置HTTPS访问?
- 使用Let’s Encrypt免费证书:
# 安装Certbot
sudo apt install certbot python3-certbot-nginx # Ubuntu
sudo yum install certbot python3-certbot-nginx # CentOS
# 获取证书
sudo certbot --nginx -d xianyu.yourdomain.com
# 自动续期测试
sudo certbot renew --dry-run
- 修改Nginx配置:
server {
listen 443 ssl;
server_name xianyu.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/xianyu.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/xianyu.yourdomain.com/privkey.pem;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
📌 最佳实践建议
- 生产环境必备:
- 使用Pro版部署方案
- 配置HTTPS加密访问
- 设置日志轮转和定期备份
- 使用强密码并开启双因素认证
- 多店铺管理策略:
- 为不同店铺创建独立用户账号
- 设置店铺专属回复模板
- 使用标签系统区分商品类型
- 配置不同店铺的独立通知规则
- 监控与告警:
# 监控容器资源使用
docker stats xianyu-auto-reply
# 设置CPU/内存使用告警(需配置Prometheus+Alertmanager)