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

2.4 KiB
Raw Blame History

AI Chat Docker 部署指南

📦 文件说明

  • Dockerfile - Docker镜像构建文件
  • docker-compose.yml - Docker Compose配置文件
  • nginx.conf - Nginx服务器配置
  • proxy.conf - 反向代理配置(可选)
  • .dockerignore - Docker构建忽略文件

🚀 快速启动

1. 基础部署(推荐)

# 构建并启动服务
docker-compose up -d

# 查看服务状态
docker-compose ps

# 查看日志
docker-compose logs -f web

访问地址:http://localhost:3000

2. 使用反向代理

# 启动包含反向代理的完整服务
docker-compose --profile proxy up -d

访问地址:http://localhost

3. 手动构建镜像

# 构建镜像
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日志持久化

📝 常用命令

# 停止服务
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. 监控和日志

# 查看资源使用情况
docker stats ai-chat-web

# 查看详细信息
docker inspect ai-chat-web

🐛 故障排除

常见问题

  1. 端口被占用

    # 修改docker-compose.yml中的端口映射
    ports:
      - "8080:80"  # 改为其他端口
    
  2. 权限问题

    # 确保dist目录有正确权限
    chmod -R 755 dist/
    
  3. 容器无法启动

    # 查看详细错误信息
    docker-compose logs web
    

📊 监控指标

  • 容器状态:docker-compose ps
  • 资源使用:docker stats
  • 访问日志:./logs/access.log
  • 错误日志:./logs/error.log

🔄 更新部署

# 1. 重新构建应用
npm run build

# 2. 重新构建Docker镜像
docker-compose build

# 3. 重启服务
docker-compose up -d