- 安装 Docker
- 安装 Docker Compose
复制环境变量示例文件并编辑:
cp .env.example .env编辑 .env 文件,设置必要的环境变量:
DEEPSEEK_API_KEY=your_api_key_here
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_MODEL=deepseek-chat# 构建镜像
docker-compose build
# 启动服务(后台运行)
docker-compose up -d# 查看所有服务日志
docker-compose logs
# 查看特定服务日志
docker-compose logs frontend
docker-compose logs backend
# 实时查看日志
docker-compose logs -f# 停止服务
docker-compose down
# 停止服务并删除卷
docker-compose down -v# 重新构建所有服务
docker-compose build
# 重新构建特定服务
docker-compose build frontend
docker-compose build backend# 进入前端容器
docker-compose exec frontend sh
# 进入后端容器
docker-compose exec backend bash如果端口被占用,修改 docker-compose.yml 中的端口映射:
ports:
- "8081:80" # 前端改为8081
- "8766:8765" # 后端改为8766清理Docker缓存:
docker system prune -a
docker-compose build --no-cache检查日志:
docker-compose logsexport DEEPSEEK_API_KEY=your_production_key
docker-compose up -d# 生产环境使用不同的.env文件
cp .env.production .env
docker-compose up -d如果使用Nginx反向代理,配置示例:
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /api/ {
proxy_pass http://localhost:8765/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /ws/ {
proxy_pass http://localhost:8765/ws/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}后端数据存储在Docker卷 backend-data 中,包含:
- 技能包数据
- 项目数据
- 其他运行时数据
备份数据:
# 导出卷数据
docker run --rm -v test-sidepanel-host_backend-data:/data -v $(pwd):/backup alpine tar czf /backup/backend-data-backup.tar.gz -C /data .
# 恢复数据
docker run --rm -v test-sidepanel-host_backend-data:/data -v $(pwd):/backup alpine tar xzf /backup/backend-data-backup.tar.gz -C /data