open-im-server/Dockerfile
dsx137 8f913ca13b
refactor(ci): actions and dockerfile (#3732)
* feat(build): add unified server image build flow

Consolidate service image definitions into a single server build setup, and update CI workflows to use it.

* fix(ci): correct Docker image tag generation
2026-06-04 10:09:07 +00:00

25 lines
624 B
Docker

FROM golang:1.25-alpine AS builder
ARG RELEASE=false
ARG COMPRESS=false
WORKDIR /openim-server
RUN apk add --no-cache upx
RUN go install github.com/magefile/mage@latest
COPY . .
RUN go mod download
RUN RELEASE=${RELEASE} COMPRESS=${COMPRESS} mage build
RUN mage -compile ./mage -ldflags "-s -w"
FROM alpine:latest
WORKDIR /openim-server
COPY --from=builder /openim-server/_output ./_output
COPY --from=builder /openim-server/config ./config
COPY --from=builder /openim-server/start-config.yml ./start-config.yml
COPY --from=builder /openim-server/mage ./mage
ENTRYPOINT ["sh", "-c", "./mage start && sleep infinity"]