# Dockerfile.local - 使用本地 Go 编译后的二进制,无需拉取 golang 镜像 # 使用方式:deploy.py --mode docker --local-go # 依赖:先由本地 go build 生成 soul-api 可执行文件 # 使用标准引用,配合 --pull=false 使用本地缓存的 alpine:3.19 FROM alpine:3.19 RUN apk add --no-cache ca-certificates tzdata wget ENV TZ=Asia/Shanghai RUN adduser -D -g '' appuser WORKDIR /app COPY soul-api . # 微信支付等证书(须存在于构建上下文,勿在 .dockerignore 中排除) COPY certs/ /app/certs/ # 由 devloy 传入 --build-arg ENV_FILE=(如 .env / .env.development) ARG ENV_FILE=.env.production COPY ${ENV_FILE} /app/.env RUN mkdir -p /app/uploads && chown -R appuser:appuser /app USER appuser EXPOSE 8080 ENTRYPOINT ["./soul-api"]