修复部署 2

This commit is contained in:
yml2213
2026-07-22 13:15:29 +08:00
parent 56e9f0cdb4
commit 36e46c4008
6 changed files with 68 additions and 43 deletions
+12 -29
View File
@@ -1,14 +1,10 @@
.PHONY: start dev backend frontend install stop frontend-build docker-pull-caddy docker-build docker-up docker-down docker-logs
.PHONY: start dev backend frontend install stop docker-build docker-up docker-down docker-logs docker-ps docker-config
ifneq (,$(wildcard .env))
include .env
export
endif
CADDY_RUNTIME_IMAGE ?= affiliate-caddy:2
CADDY_SOURCE_IMAGE ?= caddy:2
CADDY_FALLBACK_IMAGES ?= docker.m.daocloud.io/library/caddy:2 registry.cn-hangzhou.aliyuncs.com/caddy/caddy:2
# 一键启动前后端(推荐)
start dev:
@bash ./start.sh
@@ -29,31 +25,12 @@ stop:
@-lsof -tiTCP:5173 -sTCP:LISTEN | xargs kill 2>/dev/null || true
@echo "已尝试停止 8080 / 5173 端口服务"
# Docker 部署相关命令
frontend-build:
@echo "构建前端静态文件..."
cd frontend && npm ci && npm run build
# Docker 部署:宿主机只需要 Docker/Compose,前端与后端都在镜像内构建
docker-build:
@echo "构建 Docker 镜像..."
docker compose build
docker-pull-caddy:
@set -e; \
echo "准备 Caddy 运行镜像: $(CADDY_RUNTIME_IMAGE)"; \
for image in $(CADDY_SOURCE_IMAGE) $(CADDY_FALLBACK_IMAGES); do \
echo "尝试拉取 Caddy 镜像: $$image"; \
if docker pull "$$image"; then \
docker tag "$$image" "$(CADDY_RUNTIME_IMAGE)"; \
echo "已将 $$image 标记为 $(CADDY_RUNTIME_IMAGE)"; \
exit 0; \
fi; \
done; \
echo "错误: Caddy 镜像拉取失败,可在 .env 中设置 CADDY_SOURCE_IMAGE 或 CADDY_FALLBACK_IMAGES"; \
exit 1
docker-build: frontend-build docker-pull-caddy
@echo "构建后端 Docker 镜像..."
docker build -f Dockerfile.backend -t affiliate-backend:latest .
@echo "构建完成,可执行: docker compose up -d --build"
docker-up: frontend-build docker-pull-caddy
docker-up:
@echo "启动 Docker Compose 服务..."
docker compose up -d --build
@@ -64,3 +41,9 @@ docker-down:
docker-logs:
@echo "查看 backend 和 caddy 日志..."
docker compose logs -f backend caddy
docker-ps:
docker compose ps
docker-config:
docker compose config