diff --git a/deploy.sh b/deploy.sh index 6fd5506..3191b1e 100755 --- a/deploy.sh +++ b/deploy.sh @@ -156,7 +156,18 @@ deploy() { # 注意:这里需要手动修改 docker-compose.yml,或者使用环境变量 warn "请确保 docker-compose.yml 中已配置使用 image: wrbug/polyhermes:latest" else - info "构建 Docker 镜像(本地构建,版本号将显示为 dev)..." + # 获取当前分支名作为版本号 + CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "dev") + # 如果分支名包含 /,替换为 -(Docker tag 不支持 /) + DOCKER_VERSION=$(echo "$CURRENT_BRANCH" | tr '/' '-') + + info "构建 Docker 镜像(本地构建,版本号: ${DOCKER_VERSION})..." + + # 设置构建参数(通过环境变量传递给 docker-compose.yml) + export VERSION=${DOCKER_VERSION} + export GIT_TAG=${DOCKER_VERSION} + export GITHUB_REPO_URL=https://github.com/WrBug/PolyHermes + docker-compose build fi @@ -196,7 +207,9 @@ main() { info "访问地址: http://localhost:${SERVER_PORT:-80}" echo "" if [ "$USE_DOCKER_HUB" != "true" ]; then - info "提示:本地构建的版本号显示为 'dev'" + CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "dev") + DOCKER_VERSION=$(echo "$CURRENT_BRANCH" | tr '/' '-') + info "提示:本地构建的版本号为当前分支名: ${DOCKER_VERSION}" info "生产环境推荐使用 Docker Hub 镜像:" info " ./deploy.sh --use-docker-hub" info " 或修改 docker-compose.yml 使用 image: wrbug/polyhermes:latest" diff --git a/docker-compose.yml b/docker-compose.yml index 2b7a0a8..d7f94c8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,11 +8,11 @@ services: build: context: . dockerfile: Dockerfile - # 本地构建时可以传递版本号参数(可选) - # args: - # VERSION: ${VERSION:-dev} - # GIT_TAG: ${GIT_TAG:-} - # GITHUB_REPO_URL: https://github.com/WrBug/PolyHermes + # 本地构建时可以传递版本号参数(自动使用当前分支名) + args: + VERSION: ${VERSION:-dev} + GIT_TAG: ${GIT_TAG:-${VERSION:-dev}} + GITHUB_REPO_URL: ${GITHUB_REPO_URL:-https://github.com/WrBug/PolyHermes} container_name: polyhermes ports: - "${SERVER_PORT:-80}:80"