FROM golang:1.22-alpine AS build WORKDIR /src COPY go.mod ./ RUN go mod download COPY . ./ RUN go build -trimpath -ldflags='-s -w' -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"]