filebrowser/Dockerfile

22 lines
490 B
Docker

FROM node:slim as nbuild
WORKDIR /app
COPY ./frontend/package*.json ./
RUN npm i
COPY ./frontend/ ./
RUN npm run build
FROM golang:1.21-alpine as base
WORKDIR /app
COPY ./backend ./
RUN go get -u golang.org/x/net
RUN go build -ldflags="-w -s" -o filebrowser .
FROM alpine:latest
ARG app="/app/filebrowser"
RUN apk --no-cache add \
ca-certificates \
mailcap
WORKDIR /app
COPY --from=base $app* ./
COPY --from=nbuild /app/dist/ ./frontend/dist/
ENTRYPOINT [ "./filebrowser" ]