filebrowser/Dockerfile

32 lines
936 B
Docker
Raw Normal View History

2024-11-21 00:15:30 +00:00
FROM golang:1.23-alpine AS base
2024-08-24 22:02:33 +00:00
ARG VERSION
ARG REVISION
2023-06-13 02:32:30 +00:00
WORKDIR /app
2024-08-24 22:02:33 +00:00
COPY ./backend ./
2024-11-21 00:15:30 +00:00
#RUN swag init --output swagger/docs
RUN ln -s swagger /usr/local/go/src/
2024-08-24 22:02:33 +00:00
RUN go build -ldflags="-w -s \
2025-01-06 14:43:37 +00:00
-X 'github.com/gtsteffaniak/filebrowser/backend/version.Version=${VERSION}' \
-X 'github.com/gtsteffaniak/filebrowser/backend/version.CommitSHA=${REVISION}'" \
2024-08-24 22:02:33 +00:00
-o filebrowser .
FROM node:slim AS nbuild
WORKDIR /app
COPY ./frontend/package.json ./
2024-07-30 17:45:27 +00:00
RUN npm i --maxsockets 1
COPY ./frontend/ ./
2024-08-04 17:50:35 +00:00
RUN npm run build-docker
2023-06-13 02:32:30 +00:00
FROM alpine:latest
2024-08-04 17:50:35 +00:00
ENV FILEBROWSER_NO_EMBEDED="true"
2024-07-30 17:45:27 +00:00
RUN apk --no-cache add ca-certificates mailcap
2024-12-17 00:01:55 +00:00
WORKDIR /home/filebrowser
RUN adduser -D -s /bin/true -u 1000 filebrowser
USER filebrowser
COPY --from=base --chown=filebrowser:1000 /app/filebrowser* ./
COPY --from=nbuild --chown=filebrowser:1000 /app/dist/ ./http/dist/
USER root
2024-11-21 00:15:30 +00:00
# exposing default port for auto discovery.
EXPOSE 80
ENTRYPOINT [ "./filebrowser" ]