txw/devops
2026-05-03 17:49:17 +08:00
..
web chore: devops web 2026-05-03 17:49:17 +08:00
build.sh feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.infra.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.svc.test.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.svc.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.web.test.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.web.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
docker-compose.yml feat: devops 改造 2026-05-03 15:01:18 +08:00
Dockerfile feat: devops 改造 2026-05-03 15:01:18 +08:00
pack-image.sh chore: devops web 2026-05-03 17:49:17 +08:00
README.md feat: devops 改造 2026-05-03 15:01:18 +08:00
settings.xml feat: devops 改造 2026-05-03 15:01:18 +08:00
start.sh feat: devops 改造 2026-05-03 15:01:18 +08:00

碳信网 - Docker 部署指南

概述

本目录包含碳信网项目的 Docker 编排配置,分为两部分:

  • 基础设施服务nacos、redis、minio
  • 业务服务gateway、sso、mhzc、yygl

构建镜像

前置要求

  • Docker 20.10+
  • Maven 3.6+
  • Node.js 16+
  • npm

构建命令

cd devops

# 构建所有镜像(前后端)
bash build.sh [VERSION]

# 示例:构建 1.0.0-BETA 版本
bash build.sh 1.0.0-BETA

构建脚本会依次完成:

  1. 构建前端 mhzc-web
  2. 构建前端 yygl-web
  3. 构建后端统一镜像 txw-all
  4. 构建前端镜像 txw-web

仅构建后端

docker build -t txw-all:1.0.0-BETA -t txw-all:latest -f devops/Dockerfile .

仅构建前端

docker build -t txw-web:1.0.0-BETA -t txw-web:latest -f devops/web/Dockerfile .

更新镜像

代码变更后,重新构建并启动:

# 1. 重新构建镜像
bash build.sh 1.0.0-BETA

# 2. 重启业务服务(使用新镜像)
docker-compose -f docker-compose.svc.yml up -d --build

查看镜像

docker images | grep txw-

目录结构

devops/
├── docker-compose.infra.yml    # 基础设施编排
├── docker-compose.svc.yml      # 业务服务编排
├── nacos/                      # Nacos 数据持久化目录
│   ├── data/
│   └── logs/
└── README.md

快速开始

1. 准备docker网络首次必须

 docker network create txw-network

2. 启动基础设施(首次必须)

cd devops
docker-compose -f docker-compose.infra.yml up -d

3. 启动业务服务

docker-compose -f docker-compose.svc.yml up -d

4. 查看服务状态

docker-compose -f docker-compose.infra.yml ps
docker-compose -f docker-compose.svc.yml ps

服务访问

服务 地址 说明
Nacos http://localhost:8848/nacos 默认账号: nacos / nacos
Redis localhost:6379 密码: redis_password
MinIO http://localhost:9000 控制台: http://localhost:9001
Gateway http://localhost:9300 API 网关
SSO http://localhost:9301 单点登录
MHZC http://localhost:9302 碳资产服务
YYGL http://localhost:20010 运营管理服务

常用操作

查看日志

# 基础设施日志
docker-compose -f docker-compose.infra.yml logs -f

# 业务服务日志
docker-compose -f docker-compose.svc.yml logs -f

# 单个服务日志
docker-compose -f docker-compose.infra.yml logs -f nacos
docker-compose -f docker-compose.svc.yml logs -f gateway

重启服务

# 重启单个服务
docker-compose -f docker-compose.svc.yml restart gateway

# 重启所有业务服务
docker-compose -f docker-compose.svc.yml restart

停止服务

# 停止业务服务
docker-compose -f docker-compose.svc.yml down

# 停止所有服务(包括基础设施)
docker-compose -f docker-compose.infra.yml down
docker-compose -f docker-compose.svc.yml down

重建服务

# 重新构建并启动(代码更新后使用)
docker-compose -f docker-compose.svc.yml up -d --build

数据持久化

服务 宿主机路径
Nacos data ./nacos/data
Nacos logs ./nacos/logs
Redis data Docker volume: redis-data
MinIO data Docker volume: minio-data

网络说明

所有服务通过 txw-network 桥接网络互通:

  • 基础设施创建网络并定义 volumes
  • 业务服务通过 external: true 加入网络

注意:启动业务服务前,必须先启动基础设施,确保网络已创建。


开发调试

进入容器

docker exec -it txw-nacos bash
docker exec -it txw-gateway bash

检查网络

docker network inspect devops_txw-network

检查服务健康状态

curl http://localhost:8848/nacos/v1/ns/operator/metrics
docker exec txw-redis redis-cli -a redis_password ping