mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-01 23:10:26 +08:00
40 lines
862 B
Docker
40 lines
862 B
Docker
# 构建前端资源
|
|
FROM m.daocloud.io/docker.io/node:18-bookworm-slim AS fe-builder
|
|
|
|
WORKDIR /mayfly
|
|
|
|
COPY frontend .
|
|
|
|
RUN yarn config set registry 'https://registry.npmmirror.com' && \
|
|
yarn install && \
|
|
yarn build
|
|
|
|
# 构建后端资源
|
|
FROM m.daocloud.io/docker.io/golang:1.23 AS be-builder
|
|
|
|
ENV GOPROXY https://goproxy.cn
|
|
WORKDIR /mayfly
|
|
|
|
# Copy the go source for building server
|
|
COPY server .
|
|
|
|
RUN go mod tidy && go mod download
|
|
|
|
COPY --from=fe-builder /mayfly/dist /mayfly/static/static
|
|
|
|
# Build
|
|
RUN GO111MODULE=on CGO_ENABLED=0 GOOS=linux \
|
|
go build -a -ldflags=-w \
|
|
-o mayfly-go main.go
|
|
|
|
FROM m.daocloud.io/docker.io/alpine:3.20.2
|
|
|
|
ARG TZ=Asia/Shanghai
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
|
|
WORKDIR /mayfly-go
|
|
|
|
COPY --from=be-builder /mayfly/mayfly-go /usr/local/bin/mayfly-go
|
|
|
|
CMD ["mayfly-go"]
|