chore: 并入 iotlcm-app 历史到 app/(原提交 f40bda9)
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# Build context: server/
|
||||
# Example:
|
||||
# docker build -f Dockerfile -t iotlcm-app-server:latest .
|
||||
|
||||
# 基础镜像仓库。默认使用 Docker Hub 官方镜像;内网环境可替换为自己的仓库:
|
||||
# docker build --build-arg BASE_REGISTRY=harbor.example.com/library ...
|
||||
ARG BASE_REGISTRY=docker.io/library
|
||||
|
||||
FROM ${BASE_REGISTRY}/golang:1.25-alpine AS builder
|
||||
|
||||
ENV GIT_TERMINAL_PROMPT=0
|
||||
ENV GOPROXY=https://goproxy.cn,direct
|
||||
ENV TZ=Asia/Shanghai
|
||||
|
||||
WORKDIR /src/server
|
||||
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download
|
||||
|
||||
COPY . ./
|
||||
|
||||
ARG BuildVersion=0.0.0
|
||||
ARG BuildTime=
|
||||
ARG CommitID=
|
||||
|
||||
RUN go build -v -o /out/iotlcm-app-server \
|
||||
-ldflags "-X main.BuildVersion=${BuildVersion} -X main.CommitID=${CommitID} -X main.BuildTime=${BuildTime}" \
|
||||
.
|
||||
|
||||
FROM ${BASE_REGISTRY}/alpine:3.23 AS runtime
|
||||
|
||||
ENV TZ=Asia/Shanghai
|
||||
ENV APP_UPLOAD_DIR=/data/app/iotlcmadmin-web-svc/upload
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# runtime 基础镜像不含 tzdata,单独安装(原私有镜像已预装,公共镜像没有)
|
||||
RUN apk add --no-cache ca-certificates tzdata
|
||||
COPY --from=builder /out/iotlcm-app-server /app/iotlcm-app-server
|
||||
COPY resource/public /app/resource/public
|
||||
|
||||
# The environment-specific config is mounted read-only by Docker Compose at runtime.
|
||||
RUN mkdir -p "${APP_UPLOAD_DIR}" /app/config /app/resource/log/server /app/resource/log/server/sql /app/resource/cache /app/resource/certs
|
||||
|
||||
EXPOSE 8010
|
||||
VOLUME ["/data/app/iotlcmadmin-web-svc/upload", "/app/resource/certs"]
|
||||
|
||||
CMD ["./iotlcm-app-server"]
|
||||
Reference in New Issue
Block a user