2.5 KiB
2.5 KiB
Docker Compose 使用说明
本项目在根目录提供三个 Docker Compose 配置文件,分别面向不同的运行场景。下面说明各自用途与使用方式。
公共说明
- 端口映射:
- 后端:
8080:8080 - 前端:
5173:80
- 后端:
- 运行前建议在根目录准备
.env(已提供示例),用于配置以下环境变量:APP_BASE_URLTOKEN_SIGNING_KEYJWT_SECRETVOLCANO_API_KEYSPRING_MAIL_USERNAMESPRING_MAIL_PASSWORD
说明:三个 Compose 文件都依赖这些环境变量;其中
TOKEN_SIGNING_KEY/JWT_SECRET等不设置会使用空值默认。
1) docker-compose.yml(本地构建)
用途:本地开发或需要基于源码构建镜像时使用。
特点:
backend和frontend使用build从本地目录构建镜像。- 挂载
./ems-backend/json-db与./ems-backend/uploads到容器内,便于持久化数据。
使用方式(PowerShell):
docker compose -f docker-compose.yml up -d --build
停止并清理(保留挂载目录):
docker compose -f docker-compose.yml down
2) docker-compose.hub.yml(Docker Hub 镜像)
用途:不想本地构建,直接使用 Docker Hub 公共镜像。
特点:
backend/frontend使用chuxunyu/ems-backend:latest、chuxunyu/ems-frontend:latest。- 使用 Docker 卷
ems_json_db、ems_uploads持久化数据。
使用方式(PowerShell):
docker compose -f docker-compose.hub.yml up -d
停止并清理(保留卷):
docker compose -f docker-compose.hub.yml down
如需删除卷(会清空数据):
docker compose -f docker-compose.hub.yml down -v
3) docker-compose.private.yml(私有镜像仓库)
用途:使用私有镜像仓库 docker.aizhangz.top 的镜像部署。
特点:
backend/frontend使用docker.aizhangz.top/ems-backend:latest、docker.aizhangz.top/ems-frontend:latest。- 使用 Docker 卷
ems_json_db、ems_uploads持久化数据。 - 通常需要先登录私有仓库。
使用方式(PowerShell):
docker login docker.aizhangz.top
docker compose -f docker-compose.private.yml up -d
停止并清理(保留卷):
docker compose -f docker-compose.private.yml down
如需删除卷(会清空数据):
docker compose -f docker-compose.private.yml down -v
常见检查
- 前端:访问
http://localhost:5173 - 后端:访问
http://localhost:8080(可结合后端 Swagger UI)