Files
aiagents-stock/DOCKER_README.md
T
2025-10-09 08:01:06 +08:00

252 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🐳 Docker 部署快速指南
本文档是Docker部署的快速参考指南。完整文档请查看 [DOCKER_DEPLOYMENT.md](DOCKER_DEPLOYMENT.md)。
## 🎯 为什么选择Docker部署?
-**零环境配置**:无需安装Python、Node.js等环境
-**一键启动**:简单命令即可运行
-**环境隔离**:不影响系统其他软件
-**跨平台**Windows/macOS/Linux统一部署方式
-**稳定可靠**:容器自动重启,故障自动恢复
## ⚡ 5分钟快速开始
### 1️⃣ 安装Docker
**Windows/macOS:**
- 下载 [Docker Desktop](https://www.docker.com/products/docker-desktop/)
- 双击安装,启动Docker Desktop
**Linux:**
```bash
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
```
### 2️⃣ 配置环境变量
```bash
# 复制配置模板
cp .env.template .env
# 编辑 .env 文件,填入你的 DeepSeek API Key
# DEEPSEEK_API_KEY=sk-your-actual-api-key-here
```
### 3️⃣ 启动服务
```bash
# 一键启动
docker-compose up -d
# 查看日志(可选)
docker-compose logs -f
```
### 4️⃣ 访问系统
打开浏览器访问:**http://localhost:8503**
## 🎮 常用命令
```bash
# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 重启服务
docker-compose restart
# 查看日志
docker-compose logs -f
# 查看运行状态
docker ps
# 进入容器(调试用)
docker exec -it agentsstock1 bash
```
## 📁 项目结构
```
agentsstock1/
├── Dockerfile # Docker镜像构建文件
├── docker-compose.yml # Docker编排配置
├── .dockerignore # Docker构建忽略文件
├── .env.template # 环境变量模板
├── .env # 环境变量配置(需自己创建)
├── DOCKER_DEPLOYMENT.md # 详细部署文档
├── DOCKER_CHECKLIST.md # 部署检查清单
└── README.md # 项目主文档
```
## 🔑 关键特性
### Node.js 环境集成
Docker镜像已内置Node.js 18.x环境,支持pywencai等需要Node.js的Python包。
### 数据持久化
以下数据会自动保存到宿主机:
- `stock_analysis.db` - 分析历史数据库
- `stock_monitor.db` - 监测数据库
- `data/` - 临时数据目录
即使删除容器,数据也不会丢失。
### 健康检查
容器会自动监控应用健康状态,异常时自动重启。
## 🐛 快速故障排除
### 问题1: 容器启动失败
```bash
# 查看详细日志
docker-compose logs
# 检查 .env 文件是否存在并配置正确
cat .env
```
### 问题2: 无法访问网页
```bash
# 检查容器是否运行
docker ps
# 检查端口映射
docker port agentsstock1
# 尝试从容器内访问
docker exec agentsstock1 curl http://localhost:8501
```
### 问题3: 端口被占用
修改 `docker-compose.yml` 文件:
```yaml
ports:
- "8502:8501" # 改用8502端口
```
### 问题4: 数据库权限错误(Linux/macOS
```bash
chmod 666 *.db
chmod 777 data/
```
## 🔄 更新和维护
### 更新代码
```bash
# 停止服务
docker-compose down
# 拉取最新代码
git pull
# 重新构建并启动
docker-compose up -d --build
```
### 清理和重置
```bash
# 完全清理(包括volumes
docker-compose down -v
# 删除镜像
docker rmi agentsstock1:latest
# 重新构建
docker-compose build --no-cache
docker-compose up -d
```
### 备份数据
```bash
# 备份数据库文件
cp stock_analysis.db stock_analysis.db.backup
cp stock_monitor.db stock_monitor.db.backup
```
## 📊 性能监控
```bash
# 查看资源使用
docker stats agentsstock1
# 查看容器详情
docker inspect agentsstock1
# 查看日志大小
docker logs agentsstock1 2>&1 | wc -l
```
## 🔒 安全建议
1. **保护.env文件**
```bash
# Linux/macOS - 设置文件权限
chmod 600 .env
```
2. **不要提交敏感信息**
- `.env` 文件已在 `.gitignore` 中
- 不要将API Key提交到版本控制
3. **定期更新**
```bash
# 更新Docker镜像
docker-compose pull
docker-compose up -d
```
## 🌐 生产环境部署
对于生产环境,建议:
1. 使用反向代理(Nginx/Caddy
2. 配置HTTPS证书
3. 设置防火墙规则
4. 配置日志轮转
5. 定期备份数据库
6. 监控容器状态
示例Nginx配置:
```nginx
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:8501;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}
```
## 📚 更多资源
- **完整部署文档**: [DOCKER_DEPLOYMENT.md](DOCKER_DEPLOYMENT.md)
- **部署检查清单**: [DOCKER_CHECKLIST.md](DOCKER_CHECKLIST.md)
- **项目主文档**: [README.md](README.md)
- **Docker官方文档**: https://docs.docker.com/
## 🆘 获取帮助
遇到问题?
1. 查看日志:`docker-compose logs -f`
2. 查看完整文档:[DOCKER_DEPLOYMENT.md](DOCKER_DEPLOYMENT.md)
3. 检查部署清单:[DOCKER_CHECKLIST.md](DOCKER_CHECKLIST.md)
4. 联系支持:ws3101001@126.com
---
**Docker让部署更简单!祝您使用愉快!** 🚀🐳