修改makefile
This commit is contained in:
@@ -2,45 +2,162 @@
|
|||||||
# Urban Lifeline - Docker 构建与部署 (All-in-One)
|
# Urban Lifeline - Docker 构建与部署 (All-in-One)
|
||||||
# ================================================
|
# ================================================
|
||||||
|
|
||||||
.PHONY: help build build-serv build-web up down logs ps status restart
|
.PHONY: help build build-pg build-base build-serv build-web up down logs ps status restart
|
||||||
|
.PHONY: save save-pg save-base save-serv save-web
|
||||||
|
|
||||||
|
# 项目根目录 (相对于此 Makefile)
|
||||||
|
ROOT_DIR := ../..
|
||||||
|
|
||||||
|
# 镜像导出目录
|
||||||
|
EXPORT_DIR := ./images
|
||||||
|
|
||||||
|
# 时间戳标签
|
||||||
|
TIMESTAMP := $(shell date +%Y%m%d_%H%M%S)
|
||||||
|
|
||||||
# 默认目标
|
# 默认目标
|
||||||
help:
|
help:
|
||||||
@echo "Urban Lifeline Docker 命令 (All-in-One 模式)"
|
@echo "Urban Lifeline Docker 命令 (All-in-One 模式)"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "构建命令:"
|
@echo "构建命令:"
|
||||||
@echo " make build - 构建所有镜像"
|
@echo " make build - 构建所有镜像 (pg + base + serv + web)"
|
||||||
@echo " make build-serv - 构建后端镜像"
|
@echo " make build-pg - 构建 PostgreSQL 镜像"
|
||||||
@echo " make build-web - 构建前端镜像"
|
@echo " make build-base - 构建后端基础镜像"
|
||||||
|
@echo " make build-serv - 构建后端服务镜像 (依赖 base)"
|
||||||
|
@echo " make build-web - 构建前端镜像"
|
||||||
|
@echo ""
|
||||||
|
@echo "构建并导出 (SAVE=1):"
|
||||||
|
@echo " make build-pg SAVE=1 - 构建并导出 PostgreSQL 镜像"
|
||||||
|
@echo " make build-serv SAVE=1 - 构建并导出后端镜像"
|
||||||
|
@echo " make build-web SAVE=1 - 构建并导出前端镜像"
|
||||||
|
@echo " make build SAVE=1 - 构建并导出所有镜像"
|
||||||
|
@echo ""
|
||||||
|
@echo "导出命令:"
|
||||||
|
@echo " make save - 导出所有镜像"
|
||||||
|
@echo " make save-pg - 导出 PostgreSQL 镜像"
|
||||||
|
@echo " make save-base - 导出后端基础镜像"
|
||||||
|
@echo " make save-serv - 导出后端服务镜像"
|
||||||
|
@echo " make save-web - 导出前端镜像"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "启动/停止:"
|
@echo "启动/停止:"
|
||||||
@echo " make up - 启动所有服务"
|
@echo " make up - 启动所有服务"
|
||||||
@echo " make down - 停止所有服务"
|
@echo " make down - 停止所有服务"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "管理命令:"
|
@echo "管理命令:"
|
||||||
@echo " make ps - 查看容器状态"
|
@echo " make ps - 查看容器状态"
|
||||||
@echo " make status - 查看服务状态"
|
@echo " make status - 查看服务状态"
|
||||||
@echo " make logs - 查看日志"
|
@echo " make logs - 查看日志"
|
||||||
@echo " make restart-serv SERVICE=gateway - 重启后端服务"
|
@echo " make restart-serv SERVICE=gateway - 重启后端服务"
|
||||||
@echo " make restart-web SITE=platform - 重启前端站点"
|
@echo " make restart-web SITE=platform - 重启前端站点"
|
||||||
|
@echo ""
|
||||||
|
@echo "镜像导出目录: $(EXPORT_DIR)"
|
||||||
|
|
||||||
# 构建
|
# ============================================
|
||||||
build: build-serv build-web
|
# 构建镜像
|
||||||
|
# ============================================
|
||||||
|
|
||||||
build-serv:
|
# 构建所有镜像
|
||||||
bash serv/build.sh
|
build: build-pg build-base build-serv build-web
|
||||||
|
ifdef SAVE
|
||||||
|
@$(MAKE) save
|
||||||
|
endif
|
||||||
|
|
||||||
|
# 构建 PostgreSQL 镜像
|
||||||
|
build-pg:
|
||||||
|
@echo "=========================================="
|
||||||
|
@echo " 构建 PostgreSQL 镜像"
|
||||||
|
@echo " 标签: $(TIMESTAMP) / latest"
|
||||||
|
@echo "=========================================="
|
||||||
|
docker build -t urban-lifeline-pg:$(TIMESTAMP) -f postgres/Dockerfile.pg postgres/
|
||||||
|
docker tag urban-lifeline-pg:$(TIMESTAMP) urban-lifeline-pg:latest
|
||||||
|
ifdef SAVE
|
||||||
|
@$(MAKE) save-pg
|
||||||
|
endif
|
||||||
|
|
||||||
|
# 构建后端基础镜像
|
||||||
|
build-base:
|
||||||
|
@echo "=========================================="
|
||||||
|
@echo " 构建后端基础镜像"
|
||||||
|
@echo " 标签: $(TIMESTAMP) / latest"
|
||||||
|
@echo "=========================================="
|
||||||
|
cd $(ROOT_DIR) && docker build -t urban-lifeline-base-serv:$(TIMESTAMP) -f docker/urbanLifeline/serv/Dockerfile.base .
|
||||||
|
docker tag urban-lifeline-base-serv:$(TIMESTAMP) urban-lifeline-base-serv:latest
|
||||||
|
ifdef SAVE
|
||||||
|
@$(MAKE) save-base
|
||||||
|
endif
|
||||||
|
|
||||||
|
# 构建后端服务镜像 (依赖 base 镜像)
|
||||||
|
build-serv: build-base
|
||||||
|
@echo "=========================================="
|
||||||
|
@echo " 构建后端服务镜像"
|
||||||
|
@echo " 标签: $(TIMESTAMP) / latest"
|
||||||
|
@echo "=========================================="
|
||||||
|
cd $(ROOT_DIR) && docker build -t urban-lifeline-serv:$(TIMESTAMP) -f docker/urbanLifeline/serv/Dockerfile.serv .
|
||||||
|
docker tag urban-lifeline-serv:$(TIMESTAMP) urban-lifeline-serv:latest
|
||||||
|
ifdef SAVE
|
||||||
|
@$(MAKE) save-serv
|
||||||
|
endif
|
||||||
|
|
||||||
|
# 构建前端镜像
|
||||||
build-web:
|
build-web:
|
||||||
bash web/build.sh
|
@echo "=========================================="
|
||||||
|
@echo " 构建前端镜像"
|
||||||
|
@echo " 标签: $(TIMESTAMP) / latest"
|
||||||
|
@echo "=========================================="
|
||||||
|
cd $(ROOT_DIR) && docker build -t urban-lifeline-web:$(TIMESTAMP) -f docker/urbanLifeline/web/Dockerfile.web .
|
||||||
|
docker tag urban-lifeline-web:$(TIMESTAMP) urban-lifeline-web:latest
|
||||||
|
ifdef SAVE
|
||||||
|
@$(MAKE) save-web
|
||||||
|
endif
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# 导出镜像
|
||||||
|
# ============================================
|
||||||
|
|
||||||
|
# 创建导出目录
|
||||||
|
$(EXPORT_DIR):
|
||||||
|
mkdir -p $(EXPORT_DIR)
|
||||||
|
|
||||||
|
# 导出所有镜像
|
||||||
|
save: save-pg save-base save-serv save-web
|
||||||
|
|
||||||
|
# 导出 PostgreSQL 镜像
|
||||||
|
save-pg: $(EXPORT_DIR)
|
||||||
|
@echo "导出 PostgreSQL 镜像..."
|
||||||
|
docker save urban-lifeline-pg:latest | gzip > $(EXPORT_DIR)/urban-lifeline-pg.tar.gz
|
||||||
|
@echo "已导出: $(EXPORT_DIR)/urban-lifeline-pg.tar.gz"
|
||||||
|
|
||||||
|
# 导出后端基础镜像
|
||||||
|
save-base: $(EXPORT_DIR)
|
||||||
|
@echo "导出后端基础镜像..."
|
||||||
|
docker save urban-lifeline-base-serv:latest | gzip > $(EXPORT_DIR)/urban-lifeline-base-serv.tar.gz
|
||||||
|
@echo "已导出: $(EXPORT_DIR)/urban-lifeline-base-serv.tar.gz"
|
||||||
|
|
||||||
|
# 导出后端服务镜像
|
||||||
|
save-serv: $(EXPORT_DIR)
|
||||||
|
@echo "导出后端服务镜像..."
|
||||||
|
docker save urban-lifeline-serv:latest | gzip > $(EXPORT_DIR)/urban-lifeline-serv.tar.gz
|
||||||
|
@echo "已导出: $(EXPORT_DIR)/urban-lifeline-serv.tar.gz"
|
||||||
|
|
||||||
|
# 导出前端镜像
|
||||||
|
save-web: $(EXPORT_DIR)
|
||||||
|
@echo "导出前端镜像..."
|
||||||
|
docker save urban-lifeline-web:latest | gzip > $(EXPORT_DIR)/urban-lifeline-web.tar.gz
|
||||||
|
@echo "已导出: $(EXPORT_DIR)/urban-lifeline-web.tar.gz"
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# 启动/停止
|
||||||
|
# ============================================
|
||||||
|
|
||||||
# 启动/停止 (通过主 docker-compose)
|
|
||||||
up:
|
up:
|
||||||
cd .. && docker compose --profile all up -d
|
cd .. && docker compose --profile all up -d
|
||||||
|
|
||||||
down:
|
down:
|
||||||
cd .. && docker compose --profile all down
|
cd .. && docker compose --profile all down
|
||||||
|
|
||||||
# 状态
|
# ============================================
|
||||||
|
# 状态查看
|
||||||
|
# ============================================
|
||||||
|
|
||||||
ps:
|
ps:
|
||||||
docker ps --filter "name=urban-lifeline"
|
docker ps --filter "name=urban-lifeline"
|
||||||
|
|
||||||
@@ -51,7 +168,10 @@ status:
|
|||||||
@echo "=== 前端服务状态 ==="
|
@echo "=== 前端服务状态 ==="
|
||||||
@docker exec urban-lifeline-web /app/web-manager.sh status 2>/dev/null || echo "前端容器未运行"
|
@docker exec urban-lifeline-web /app/web-manager.sh status 2>/dev/null || echo "前端容器未运行"
|
||||||
|
|
||||||
|
# ============================================
|
||||||
# 日志
|
# 日志
|
||||||
|
# ============================================
|
||||||
|
|
||||||
logs:
|
logs:
|
||||||
cd .. && docker compose logs -f --tail=100
|
cd .. && docker compose logs -f --tail=100
|
||||||
|
|
||||||
@@ -61,7 +181,10 @@ logs-serv:
|
|||||||
logs-web:
|
logs-web:
|
||||||
docker logs -f --tail=100 urban-lifeline-web
|
docker logs -f --tail=100 urban-lifeline-web
|
||||||
|
|
||||||
|
# ============================================
|
||||||
# 重启单个服务
|
# 重启单个服务
|
||||||
|
# ============================================
|
||||||
|
|
||||||
restart-serv:
|
restart-serv:
|
||||||
@if [ -z "$(SERVICE)" ]; then \
|
@if [ -z "$(SERVICE)" ]; then \
|
||||||
echo "用法: make restart-serv SERVICE=gateway"; \
|
echo "用法: make restart-serv SERVICE=gateway"; \
|
||||||
|
|||||||
@@ -25,12 +25,12 @@ declare -A SERVICES=(
|
|||||||
["system"]="8082:384m"
|
["system"]="8082:384m"
|
||||||
["auth"]="8081:256m"
|
["auth"]="8081:256m"
|
||||||
["file"]="8084:256m"
|
["file"]="8084:256m"
|
||||||
["log"]="8083:192m"
|
# ["log"]="8083:192m"
|
||||||
["message"]="8085:256m"
|
# ["message"]="8085:256m"
|
||||||
["crontab"]="8086:192m"
|
# ["crontab"]="8086:192m"
|
||||||
["ai"]="8090:384m"
|
["ai"]="8090:384m"
|
||||||
["bidding"]="8087:256m"
|
# ["bidding"]="8087:256m"
|
||||||
["platform"]="8089:256m"
|
# ["platform"]="8089:256m"
|
||||||
["workcase"]="8088:384m"
|
["workcase"]="8088:384m"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ declare -A WEBS=(
|
|||||||
["shared"]="SHARED_PORT:8000"
|
["shared"]="SHARED_PORT:8000"
|
||||||
["platform"]="PLATFORM_PORT:8001"
|
["platform"]="PLATFORM_PORT:8001"
|
||||||
["workcase"]="WORKCASE_PORT:8002"
|
["workcase"]="WORKCASE_PORT:8002"
|
||||||
["bidding"]="BIDDING_PORT:8003"
|
# ["bidding"]="BIDDING_PORT:8003"
|
||||||
["workcase_wechat"]="WORKCASE_WECHAT_PORT:8004"
|
["workcase_wechat"]="WORKCASE_WECHAT_PORT:8004"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user