This commit is contained in:
gitadmin
2026-10-20 13:49:24 +08:00
parent e6269fcb13
commit 020caa889f
3 changed files with 573 additions and 356 deletions
+381 -216
View File
@@ -1,484 +1,649 @@
# Docker Compose 文件版本,3.7 支持大多数现代 Docker 特性
version: '3.7' version: '3.7'
# 应用服务 # 应用服务定义区,包含多种 Go 框架 + 多种前端 UI 组件库的组合服务
services: services:
# 应用服务
# ==========================================================================================
# Gin 框架 + Layui 前端模板
# ==========================================================================================
gin_layui: gin_layui:
# 镜像名称 # 镜像名称:从私有仓库拉取,格式为 ${仓库地址}/easygoadmin/${服务名}:${版本号}
# 版本号未指定时默认使用 latest
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称,使用环境变量 ${SERVER_NAME} 指定,便于识别
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 以特权模式运行容器,赋予容器访问宿主机文件系统、设备等的权限
#build: # 注意:特权模式安全性较低,生产环境需谨慎使用
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 指定容器内运行进程的用户为 root
user: root user: root
# 启动策略为始终重启 # 启动策略:始终重启(容器退出时自动重启)
restart: always restart: always
# 设置网络模式为host模式 # 网络模式:host 模式,容器直接使用宿主机网络,无需 NAT 转换
# 注意:host 模式下 ports 端口映射实际不生效,仅作声明用途
network_mode: host network_mode: host
# 端口映射 # 端口映射声明(host 模式下实际由应用自身监听端口)
ports: ports:
- 8010:8010 - 8010:8010
# 文件挂载 # 文件挂载:将宿主机当前目录下 ${SERVER_NAME}/upload 挂载到容器内上传目录
# 用于持久化用户上传的文件
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 日志配置 # 从 .env.local 文件加载环境变量到容器
env_file:
- .env.local
# 日志配置:使用 json-file 驱动,单个日志文件最大 500MB,最多保留 10 个
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Gin 框架 + ElementPlus 前端模板
# ==========================================================================================
gin_elevue: gin_elevue:
# 镜像名称 # 镜像名称(同上,使用环境变量动态拼接)
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式运行
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 容器内运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启策略
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8013 端口)
ports: ports:
- 8013:8013 - 8013:8013
# 文件挂载 # 上传文件持久化挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 日志配置 # 环境变量文件
env_file:
- .env.local
# 日志轮转配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Gin 框架 + AntDesignVue 前端模板
# ==========================================================================================
gin_antdvue: gin_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8016 端口)
ports: ports:
- 8016:8016 - 8016:8016
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Gin 框架 + NaiveUI 前端模板
# ==========================================================================================
gin_naivevue:
# 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称
container_name: ${SERVER_NAME}
# 特权模式
privileged: true
# 运行用户
user: root
# 始终重启
restart: always
# host 网络模式
network_mode: host
# 端口映射(8019 端口)
ports:
- 8019:8019
# 上传目录挂载
volumes:
- $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "10"
# ==========================================================================================
# Beego 框架 + Layui 前端模板
# ==========================================================================================
beego_layui: beego_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8030 端口)
ports: ports:
- 8030:8030 - 8030:8030
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Beego 框架 + ElementPlus 前端模板
# ==========================================================================================
beego_elevue: beego_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8033 端口)
ports: ports:
- 8033:8033 - 8033:8033
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件(已补全,与其他服务保持一致)
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Beego 框架 + AntDesignVue 前端模板
# ==========================================================================================
beego_antdvue: beego_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8036 端口)
ports: ports:
- 8036:8036 - 8036:8036
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Beego 框架 + NaiveUI 前端模板
# ==========================================================================================
beego_naivevue:
# 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称
container_name: ${SERVER_NAME}
# 特权模式
privileged: true
# 运行用户
user: root
# 始终重启
restart: always
# host 网络模式
network_mode: host
# 端口映射(8039 端口)
ports:
- 8039:8039
# 上传目录挂载
volumes:
- $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "10"
# ==========================================================================================
# GoFrame 框架 + Layui 前端模板
# ==========================================================================================
goframe_layui: goframe_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8020 端口)
ports: ports:
- 8020:8020 - 8020:8020
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# GoFrame 框架 + ElementPlus 前端模板
# ==========================================================================================
goframe_elevue: goframe_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8023 端口)
ports: ports:
- 8023:8023 - 8023:8023
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# GoFrame 框架 + AntDesignVue 前端模板
# ==========================================================================================
goframe_antdvue: goframe_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8026 端口)
ports: ports:
- 8026:8026 - 8026:8026
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# GoFrame 框架 + NaiveUI 前端模板
# ==========================================================================================
goframe_naivevue:
# 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称
container_name: ${SERVER_NAME}
# 特权模式
privileged: true
# 运行用户
user: root
# 始终重启
restart: always
# host 网络模式
network_mode: host
# 端口映射(8029 端口)
ports:
- 8029:8029
# 上传目录挂载
volumes:
- $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "10"
# ==========================================================================================
# Iris 框架 + Layui 前端模板
# ==========================================================================================
iris_layui: iris_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8040 端口)
ports: ports:
- 8040:8040 - 8040:8040
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Iris 框架 + ElementPlus 前端模板
# ==========================================================================================
iris_elevue: iris_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8043 端口)
ports: ports:
- 8043:8043 - 8043:8043
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Iris 框架 + AntDesignVue 前端模板
# ==========================================================================================
iris_antdvue: iris_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8046 端口)
ports: ports:
- 8046:8046 - 8046:8046
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Iris 框架 + NaiveUI 前端模板
# ==========================================================================================
iris_naivevue:
# 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称
container_name: ${SERVER_NAME}
# 特权模式
privileged: true
# 运行用户
user: root
# 始终重启
restart: always
# host 网络模式
network_mode: host
# 端口映射(8049 端口)
ports:
- 8049:8049
# 上传目录挂载
volumes:
- $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "10"
# ==========================================================================================
# Echo 框架 + Layui 前端模板
# ==========================================================================================
echo_layui: echo_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8050 端口)
ports: ports:
- 8050:8050 - 8050:8050
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Echo 框架 + ElementPlus 前端模板
# ==========================================================================================
echo_elevue: echo_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8053 端口)
ports: ports:
- 8053:8053 - 8053:8053
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Echo 框架 + AntDesignVue 前端模板
# ==========================================================================================
echo_antdvue: echo_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 构建镜像 # 特权模式
# build:
# context: ./
# dockerfile: Dockerfile
#build: .
# 将容器运行在特权模式下,意味着容器内的进程将具
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8056 端口)
ports: ports:
- 8056:8056 - 8056:8056
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/${SERVER_NAME}/uploads:/data/app/public/uploads - $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置 # 日志配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# ==========================================================================================
# Echo 框架 + NaiveUI 前端模板
# ==========================================================================================
echo_naivevue:
# 镜像名称
image: ${DOCKER_REGISTRY_URL}/easygoadmin/${SERVER_NAME}:${VERSION:-latest}
# 容器名称
container_name: ${SERVER_NAME}
# 特权模式
privileged: true
# 运行用户
user: root
# 始终重启
restart: always
# host 网络模式
network_mode: host
# 端口映射(8059 端口)
ports:
- 8059:8059
# 上传目录挂载
volumes:
- $PWD/${SERVER_NAME}/upload:/data/app/upload
# 环境变量文件
env_file:
- .env.local
# 日志配置
logging:
driver: "json-file"
options:
max-size: "500m"
max-file: "10"
+188 -136
View File
@@ -1,87 +1,100 @@
# Docker Compose 文件版本,3.7 支持大多数现代 Docker 特性
version: '3.7' version: '3.7'
# 应用服务 # 应用服务定义区,包含多种 Python Web 框架 + 多种前端 UI 组件库的组合服务
services: services:
# 网关服务
# ==========================================================================================
# Django 框架 + Layui 前端模板
# ==========================================================================================
django_layui: django_layui:
# 镜像名称 # 镜像名称:从私有仓库拉取,格式为 ${仓库地址}/xiaomayi/${服务名}:${版本号}
# 版本号未指定时默认使用 latest
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称,使用环境变量 ${SERVER_NAME} 指定,便于识别
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
#build: . # 以特权模式运行容器,赋予容器访问宿主机文件系统、设备等的权限
# 将容器运行在特权模式下,意味着容器内的进程将具 # 注意:特权模式安全性较低,生产环境需谨慎使用
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 指定容器内运行进程的用户为 root
user: root user: root
# 启动策略为始终重启 # 启动策略:始终重启(容器退出时自动重启)
restart: always restart: always
# 设置网络模式为host模式 # 网络模式:host 模式,容器直接使用宿主机网络,无需 NAT 转换
# 注意:host 模式下 ports 端口映射实际不生效,仅作声明用途
network_mode: host network_mode: host
# 端口映射 # 端口映射声明(host 模式下实际由应用自身监听端口)
ports: ports:
- 8010:8010 - 8010:8010
# 文件挂载 # 文件挂载:将宿主机当前目录下的 uploads 挂载到容器内上传目录
# 用于持久化用户上传的文件
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 从 .env.local 文件加载环境变量到容器
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置:使用 json-file 驱动,单个日志文件最大 500MB,最多保留 10 个
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Django 框架 + ElementPlus 前端模板
# ==========================================================================================
django_elevue: django_elevue:
# 镜像名称 # 镜像名称(同上,使用环境变量动态拼接)
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式运行
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 容器内运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启策略
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8013 端口)
ports: ports:
- 8013:8013 - 8013:8013
# 文件挂载 # 上传文件持久化挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志轮转配置
logging: logging:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Django 框架 + AntDesignVue 前端模板
# ==========================================================================================
django_antdvue: django_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8016 端口)
ports: ports:
- 8016:8016 - 8016:8016
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -90,27 +103,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Django 框架 + NaiveUI 前端模板
# ==========================================================================================
django_naivevue: django_naivevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8019 端口)
ports: ports:
- 8019:8019 - 8019:8019
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -119,27 +135,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 网关服务
# ==========================================================================================
# Flask 框架 + Layui 前端模板
# ==========================================================================================
flask_layui: flask_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8020 端口)
ports: ports:
- 8020:8020 - 8020:8020
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -148,27 +167,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Flask 框架 + ElementPlus 前端模板
# ==========================================================================================
flask_elevue: flask_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8023 端口)
ports: ports:
- 8023:8023 - 8023:8023
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -177,27 +199,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Flask 框架 + AntDesignVue 前端模板
# ==========================================================================================
flask_antdvue: flask_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8026 端口)
ports: ports:
- 8026:8026 - 8026:8026
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -206,27 +231,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Flask 框架 + NaiveUI 前端模板
# ==========================================================================================
flask_naivevue: flask_naivevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8029 端口)
ports: ports:
- 8029:8029 - 8029:8029
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -235,27 +263,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# FastAPI 框架 + Layui 前端模板
# ==========================================================================================
fastapi_layui: fastapi_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8030 端口)
ports: ports:
- 8030:8030 - 8030:8030
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -264,27 +295,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# FastAPI 框架 + ElementPlus 前端模板
# ==========================================================================================
fastapi_elevue: fastapi_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8033 端口)
ports: ports:
- 8033:8033 - 8033:8033
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -293,27 +327,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# FastAPI 框架 + AntDesignVue 前端模板
# ==========================================================================================
fastapi_antdvue: fastapi_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8036 端口)
ports: ports:
- 8036:8036 - 8036:8036
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -322,27 +359,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# FastAPI 框架 + NaiveUI 前端模板
# ==========================================================================================
fastapi_naivevue: fastapi_naivevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8039 端口)
ports: ports:
- 8039:8039 - 8039:8039
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -351,27 +391,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 应用服务
# ==========================================================================================
# Tornado 框架 + Layui 前端模板
# ==========================================================================================
tornado_layui: tornado_layui:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8040 端口)
ports: ports:
- 8040:8040 - 8040:8040
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -380,27 +423,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Tornado 框架 + ElementPlus 前端模板
# ==========================================================================================
tornado_elevue: tornado_elevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8043 端口)
ports: ports:
- 8043:8043 - 8043:8043
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -409,27 +455,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Tornado 框架 + AntDesignVue 前端模板
# ==========================================================================================
tornado_antdvue: tornado_antdvue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8046 端口)
ports: ports:
- 8046:8046 - 8046:8046
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -438,27 +487,30 @@ services:
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
# 后端服务
# ==========================================================================================
# Tornado 框架 + NaiveUI 前端模板
# ==========================================================================================
tornado_naivevue: tornado_naivevue:
# 镜像名称 # 镜像名称
image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest} image: ${DOCKER_REGISTRY_URL}/xiaomayi/${SERVER_NAME}:${VERSION:-latest}
# 容器名称 # 容器名称
container_name: ${SERVER_NAME} container_name: ${SERVER_NAME}
# 将容器运行在特权模式下,意味着容器内的进程将具 # 特权模式
# 有访问宿主机的权限,包括文件系统、设备和系统功能等
privileged: true privileged: true
# 指定容器中运行的用户 # 运行用户
user: root user: root
# 启动策略为始终重启 # 始终重启
restart: always restart: always
# 设置网络模式为host模式 # host 网络模式
network_mode: host network_mode: host
# 端口映射 # 端口映射(8049 端口)
ports: ports:
- 8049:8049 - 8049:8049
# 文件挂载 # 上传目录挂载
volumes: volumes:
- $PWD/uploads:/data/apps/uploads - $PWD/uploads:/data/apps/uploads
# 环境变量文件
env_file: env_file:
- .env.local - .env.local
# 日志配置 # 日志配置
@@ -466,4 +518,4 @@ services:
driver: "json-file" driver: "json-file"
options: options:
max-size: "500m" max-size: "500m"
max-file: "10" max-file: "10"
+4 -4
View File
@@ -15,7 +15,7 @@ common:
# 仓库类型 - 仓库的技术类型(harbor、acr、dockerhub等) # 仓库类型 - 仓库的技术类型(harbor、acr、dockerhub等)
registryType: "harbor" registryType: "harbor"
# 应用部署基础镜像 # 应用部署基础镜像
registryImage: "go:1.25.1-rocky8-dos" registryImage: "go:1.27.2-rocky8-dos"
# 阿里云ACR仓库配置 - 云上仓库,用于生产环境或特定场景 # 阿里云ACR仓库配置 - 云上仓库,用于生产环境或特定场景
aliyun: aliyun:
@@ -28,7 +28,7 @@ common:
# 仓库类型 - 阿里云容器镜像服务 # 仓库类型 - 阿里云容器镜像服务
registryType: "acr" registryType: "acr"
# 应用部署基础镜像 # 应用部署基础镜像
registryImage: "go:1.25.1-rocky8-dos" registryImage: "go:1.27.2-rocky8-dos"
# Docker Hub配置 - 官方Docker仓库,用于公开镜像 # Docker Hub配置 - 官方Docker仓库,用于公开镜像
dockerhub: dockerhub:
# Docker Hub地址 - 官方Docker仓库地址 # Docker Hub地址 - 官方Docker仓库地址
@@ -40,7 +40,7 @@ common:
# 仓库类型 - 官方Docker仓库 # 仓库类型 - 官方Docker仓库
registryType: "dockerhub" registryType: "dockerhub"
# 应用部署基础镜像 # 应用部署基础镜像
registryImage: "go:1.25.1-rocky8-dos" registryImage: "go:1.27.2-rocky8-dos"
# 钉钉消息 # 钉钉消息
dingtalk: dingtalk:
@@ -103,7 +103,7 @@ common:
# 部署相关配置 # 部署相关配置
deployScript: "deploy_env.sh" # 部署执行的shell脚本文件名 deployScript: "deploy_env.sh" # 部署执行的shell脚本文件名
deployPath: "/opt/apps" # 目标服务器上的应用部署根路径 deployPath: "/usr/local/docker/nginx/html" # 目标服务器上的应用部署根路径
# ============================================================================== # ==============================================================================
# 短信服务配置 # 短信服务配置