diff --git a/Dockerfile b/Dockerfile index a43b0de..16c3811 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,13 +6,19 @@ WORKDIR /app # 安装依赖 RUN apk add --no-cache git -# 复制 go.mod 和 go.sum -COPY go.mod go.sum* ./ +# 复制 go 模块文件 +COPY go.mod ./ +# 如果存在 go.sum 则复制 +COPY go.su[m] ./ +# 下载依赖 RUN go mod download # 复制源代码 COPY . . +# 生成 go.sum(如果不存在) +RUN go mod tidy + # 编译 RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -ldflags="-s -w" -o siteproxy . @@ -27,6 +33,12 @@ WORKDIR /app COPY --from=builder /app/siteproxy . COPY --from=builder /app/templates ./templates +# 创建非 root 用户 +RUN addgroup -g 1000 appuser && \ + adduser -D -u 1000 -G appuser appuser && \ + chown -R appuser:appuser /app +USER appuser + # 暴露端口 EXPOSE 8080