| 1234567891011121314151617181920212223242526272829303132333435 |
- # This Dockerfile is used for building the worker pool binary itself
- # Buildtime environment
- # -------------------------------------------
- # pinned because of https://github.com/moby/moby/issues/45935
- FROM golang:1.20.5-alpine as build
- WORKDIR /app
- RUN apk update && apk add gcc binutils-gold musl-dev
- COPY go.mod .
- COPY go.sum .
- COPY /api ./api
- COPY /ee ./ee
- COPY /internal ./internal
- COPY /pkg ./pkg
- COPY /provisioner ./provisioner
- COPY /workers ./workers
- RUN go build -ldflags '-w -s' -tags ee -a -o ./bin/worker-pool ./workers
- # Runtime environment
- # ----------------------
- FROM alpine:3.16
- WORKDIR /app
- RUN apk update && apk add curl
- COPY --from=build /app/bin/worker-pool /usr/bin/
- COPY /internal/opa/config.yaml /app/opa/config.yaml
- COPY /internal/opa/policies /app/opa/policies
- ENV OPA_CONFIG_FILE_DIR /app/opa
- ENTRYPOINT [ "worker-pool" ]
|