Files
template-10556/README-Docker.md
2025-07-22 13:27:07 +08:00

144 lines
2.4 KiB
Markdown
Raw Permalink 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.

# AI Chat Docker 部署指南
## 📦 文件说明
- `Dockerfile` - Docker镜像构建文件
- `docker-compose.yml` - Docker Compose配置文件
- `nginx.conf` - Nginx服务器配置
- `proxy.conf` - 反向代理配置(可选)
- `.dockerignore` - Docker构建忽略文件
## 🚀 快速启动
### 1. 基础部署(推荐)
```bash
# 构建并启动服务
docker-compose up -d
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs -f web
```
访问地址http://localhost:3000
### 2. 使用反向代理
```bash
# 启动包含反向代理的完整服务
docker-compose --profile proxy up -d
```
访问地址http://localhost
### 3. 手动构建镜像
```bash
# 构建镜像
docker build -t ai-chat:latest .
# 运行容器
docker run -d -p 3000:80 --name ai-chat-container ai-chat:latest
```
## 🔧 配置说明
### 端口配置
- 默认端口3000 (可在docker-compose.yml中修改)
- 反向代理端口80/443
### 环境变量
- `TZ=Asia/Shanghai` - 时区设置
### 数据卷
- `./logs:/var/log/nginx` - Nginx日志持久化
## 📝 常用命令
```bash
# 停止服务
docker-compose down
# 重新构建并启动
docker-compose up -d --build
# 查看容器状态
docker-compose ps
# 进入容器
docker-compose exec web sh
# 查看实时日志
docker-compose logs -f
# 清理未使用的镜像
docker image prune -f
```
## 🔒 生产环境配置
### 1. HTTPS配置
1. 将SSL证书放入 `./ssl/` 目录
2. 取消注释 `proxy.conf` 中的HTTPS配置
3. 重启服务
### 2. 性能优化
- 启用gzip压缩 ✅
- 静态资源缓存 ✅
- 安全头设置 ✅
### 3. 监控和日志
```bash
# 查看资源使用情况
docker stats ai-chat-web
# 查看详细信息
docker inspect ai-chat-web
```
## 🐛 故障排除
### 常见问题
1. **端口被占用**
```bash
# 修改docker-compose.yml中的端口映射
ports:
- "8080:80" # 改为其他端口
```
2. **权限问题**
```bash
# 确保dist目录有正确权限
chmod -R 755 dist/
```
3. **容器无法启动**
```bash
# 查看详细错误信息
docker-compose logs web
```
## 📊 监控指标
- 容器状态:`docker-compose ps`
- 资源使用:`docker stats`
- 访问日志:`./logs/access.log`
- 错误日志:`./logs/error.log`
## 🔄 更新部署
```bash
# 1. 重新构建应用
npm run build
# 2. 重新构建Docker镜像
docker-compose build
# 3. 重启服务
docker-compose up -d
```