19 lines
674 B
Docker
19 lines
674 B
Docker
FROM alpine:3.20.2
|
|
|
|
RUN apk update && apk add go curl
|
|
RUN mkdir -p /opt/converge/bin
|
|
|
|
# if templ cannot be obtained: quick fix, remove this statement and run make, then build the image.
|
|
RUN curl -L https://github.com/a-h/templ/releases/download/v0.2.747/templ_Linux_x86_64.tar.gz -o templ.tar.gz && \
|
|
tar xvzf templ.tar.gz templ && \
|
|
chmod 755 templ && \
|
|
mv templ /bin
|
|
COPY cmd pkg static go.mod go.sum /opt/converge/
|
|
WORKDIR /opt/converge
|
|
ENV GOTOOLCHAIN=auto
|
|
RUN go mod download
|
|
COPY . /opt/converge/
|
|
RUN templ generate
|
|
RUN go build -ldflags "-linkmode 'external' -extldflags '-static'" -o bin ./cmd/...
|
|
RUN GOOS=windows GOARCH=amd64 go build -o bin ./cmd/...
|