This commit is contained in:
dxin
2025-10-22 17:47:50 +08:00
parent a9a5b69d02
commit e2e0dfd8ff
16 changed files with 401 additions and 15 deletions

27
Dockerfile/go/Dockerfile Normal file
View File

@@ -0,0 +1,27 @@
# 基础镜像轻量Alpine适配Go二进制运行
FROM alpine:latest
# 定义环境变量默认值ENV=localport=8100容器启动可覆盖
ENV APP_ENV=local \
APP_PORT=8100
# 安装必要依赖若Go二进制依赖系统C库无依赖可删除此步
RUN apk add --no-cache libc6-compat
# 创建工作目录(统一存放二进制和配置文件)
WORKDIR /app
# 1. 复制配置文件到 /app 目录(与二进制文件同目录)
# 本地 configs/ 目录下的所有文件,会直接复制到容器 /app/ 下
COPY configs/* /app/
# 2. 复制Go二进制文件到 /app 目录
# 本地二进制文件路径替换为实际路径(如 ./s3-lessie-sourcing-api
COPY build/lessie-sourcing-api /app/
# 暴露默认端口与APP_PORT默认值一致仅声明作用
EXPOSE 8100
# 启动命令通过环境变量动态注入ENV和port
# 逻辑用APP_ENV设置启动ENVAPP_PORT设置--port参数默认8100
CMD ["sh", "-c", "env ENV=$APP_ENV /app/lessie-sourcing-api --port ${APP_PORT}"]