FROM node:20-alpine AS frontend WORKDIR /frontend-build COPY ./frontend . RUN npm install -g pnpm && pnpm i && pnpm build FROM golang:1.23-alpine AS backend LABEL anther="github.com/Sakurasan" # RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories RUN apk --no-cache add make cmake upx WORKDIR /build COPY . . COPY --from=frontend /frontend-build/dist /build/cmd/openteam/dist ENV GO111MODULE=on # ENV GOPROXY=https://goproxy.cn,direct CMD [ "go mod tidy","go mod download" ] RUN make build FROM alpine:latest AS runner # 设置alpine 时间为上海时间 # RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories RUN apk update && apk --no-cache add tzdata ffmpeg && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && echo "Asia/Shanghai" > /etc/timezone # RUN apk update && apk --no-cache add openssl libgcc libstdc++ binutils WORKDIR /app COPY --from=backend /build/bin/openteam /app/openteam ENV GIN_MODE=release ENV PATH=$PATH:/app EXPOSE 80 443 ENTRYPOINT ["/app/openteam"]