Skip to content

05 Go Eino AI应用开发实战 | Docker 部署指南

本指南提供了使用 Docker 和 Docker Compose 部署 Go-Eino Interview Agent 平台的全面说明。该平台由多个微服务组成,包括 Go 后端、Next.js 前端、MySQL 数据库、Redis 缓存以及用于 AI 功能的可选 Milvus 向量数据库。

架构概述

部署架构采用微服务模式,包含以下核心组件:

  • 外部访问
  • Docker 网络
    • 端口 80
    • 端口 80
    • /api/*
    • /*
  • Nginx 反向代理
  • 前端 :3000
  • 后端 :8888
  • MySQL :3306
  • Redis :6379
  • Etcd :2379
  • 用户浏览器
  • API 客户端

前置条件

在开始部署之前,请确保已安装以下软件:

  • Docker(版本 20.10 或更高)
  • Docker Compose(版本 2.0 或更高)
  • Git 用于克隆仓库
  • 至少 4GB RAM 以获得最佳性能

快速开始

运行平台最快的方式是使用提供的 Docker Compose 配置:

bash
git clone <repository-url> cd go-eino-interview-agent  # 启动所有服务 docker compose -f docker-compose.yml up -d  # 检查服务状态 docker compose ps

应用程序将在以下地址可用:

部署配置

项目为不同的部署场景提供了三种 Docker Compose 配置:

配置

用途

主要特性

docker-compose.yml

开发

包含 Nginx 代理的全栈服务,暴露外部端口

docker-compose-prod.yml

生产

为生产环境优化,内部网络通信

docker-compose-example.yml

模板

包含示例的配置参考

开发环境部署

开发配置文件 docker-compose.yml 包含:

  • Nginx 反向代理,监听端口 80
  • 所有服务的外部端口暴露
  • 健康检查用于服务监控
  • 数据持久化的卷挂载

生产环境部署

生产配置文件 docker-compose-prod.yml 针对以下方面进行了优化:

  • 内部网络通信(减少外部暴露)
  • 生产环境变量
  • 优化的构建参数
  • 安全加固

对于生产部署,请始终使用环境变量来管理敏感数据,如数据库密码和