d821d392/Dockerfile
1970-01-01 00:00:00 +00:00

41 lines
1.1 KiB
Docker

FROM golang:1.23 AS build
WORKDIR /app
COPY . .
ADD https://packaged-cli.prisma.sh/prisma-cli-5.22.0-linux-x64.gz /prisma-cli-linux-x64.gz
ENV PRISMA_CLI_DIR=/root/.cache/prisma/binaries/cli/5.22.0
RUN go mod download
RUN go get github.com/steebchen/prisma-client-go
RUN mkdir -p $PRISMA_CLI_DIR
RUN mv /prisma-cli-linux-x64.gz $PRISMA_CLI_DIR/prisma-cli-linux-x64.gz
RUN gunzip $PRISMA_CLI_DIR/prisma-cli-linux-x64.gz
RUN chmod +x $PRISMA_CLI_DIR/prisma-cli-linux-x64
RUN bash scripts/db-push.sh
RUN go build -o /main main.go
RUN go build -o /create-user cli/create-user_gen.go
FROM alpine
ARG USER=default
ENV HOME /home/$USER
RUN apk add --update libc6-compat
# add new user
RUN adduser -D $USER
RUN mkdir /home/$USER/files
RUN chown -R $USER:$USER /home/$USER/files
USER $USER
WORKDIR $HOME
COPY --from=build --chown=default:default /main ./main
COPY --from=build --chown=default:default /create-user ./create-user
COPY --from=build --chown=default:default /app/.env .env
COPY --chown=default:default views/ ./views
COPY --chown=default:default static/ ./static/
EXPOSE 8089
CMD ./main