21 lines
750 B
Docker
21 lines
750 B
Docker
FROM golang:1.22-alpine AS build
|
|
WORKDIR /src
|
|
ARG BUILD_REVISION=devel
|
|
ARG BUILD_TIME=unknown
|
|
ARG BUILD_DIRTY=unknown
|
|
COPY go.mod ./
|
|
RUN go mod download
|
|
COPY . ./
|
|
RUN go build -trimpath -ldflags="-s -w -X orchestra/internal/buildinfo.Revision=${BUILD_REVISION} -X orchestra/internal/buildinfo.Time=${BUILD_TIME} -X orchestra/internal/buildinfo.Dirty=${BUILD_DIRTY}" -o /out/orchestra ./cmd/orchestra
|
|
|
|
FROM alpine:3.21
|
|
RUN adduser -D -u 10001 orchestra
|
|
WORKDIR /app
|
|
COPY --from=build /out/orchestra /app/orchestra
|
|
COPY deploy/docker-api-entrypoint.sh /app/docker-api-entrypoint.sh
|
|
RUN mkdir /data && chown orchestra:orchestra /data
|
|
ENV ORCHESTRA_DATA=/data ORCHESTRA_PORT=9145
|
|
VOLUME ["/data"]
|
|
EXPOSE 9145
|
|
ENTRYPOINT ["/app/docker-api-entrypoint.sh"]
|