40 lines
771 B
Docker
40 lines
771 B
Docker
FROM golang:1.26.1-alpine3.23
|
|
|
|
RUN apk update && apk upgrade && apk add --no-cache curl libwebp-dev alpine-sdk vips-dev git
|
|
|
|
ARG UID=1000
|
|
ARG GID=1000
|
|
ARG HOME=/home/app
|
|
ARG WORKDIR=/app
|
|
|
|
ENV USR=app
|
|
ENV GRP=app
|
|
ENV GOPATH=${HOME}/bin
|
|
ENV PATH=$PATH:$GOPATH:$GOPATH/bin
|
|
|
|
RUN addgroup --gid "${GID}" "${GRP}"
|
|
RUN adduser \
|
|
-S \
|
|
-u "${UID}" \
|
|
-g "${GID}" \
|
|
-D "${GRP}" \
|
|
-h /home/app \
|
|
"${USR}"
|
|
RUN mkdir ${WORKDIR}
|
|
RUN chown -R ${USR}:${GRP} ${WORKDIR}
|
|
|
|
USER ${USR}
|
|
|
|
WORKDIR ${WORKDIR}
|
|
|
|
RUN go install github.com/air-verse/air@v1.64.5
|
|
|
|
RUN go install github.com/swaggo/swag/cmd/swag@v1.16.6
|
|
|
|
RUN go install github.com/pressly/goose/v3/cmd/goose@v3.26.0
|
|
|
|
RUN export CGO_ENABLED=1
|
|
|
|
# RUN go install github.com/stripe/stripe-cli@latest
|
|
ENTRYPOINT air
|