init
Some checks failed
release-tag / release-image (push) Successful in 1m35s
build-binaries / build (, amd64, linux) (push) Failing after 38s
build-binaries / build (, arm, 7, linux) (push) Failing after 36s
build-binaries / build (, arm64, linux) (push) Failing after 36s
build-binaries / release (push) Has been cancelled
build-binaries / build (.exe, amd64, windows) (push) Has been cancelled

This commit is contained in:
2025-09-08 21:03:39 +02:00
parent 1660cf8f33
commit f8d120702c
5 changed files with 287 additions and 0 deletions

25
Dockerfile Normal file
View File

@@ -0,0 +1,25 @@
# -------- Dockerfile (Multi-Stage Build) --------
# 1. Builder-Stage
FROM golang:1.24-alpine AS builder
WORKDIR /app
COPY go.* ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /bin/virtualfileserver
# 2. Runtime-Stage
FROM alpine:3.22
# HTTPS-Callouts in Alpine brauchen ca-certificates
RUN apk add --no-cache ca-certificates
COPY --from=builder /bin/virtualfileserver /bin/virtualfileserver
# Default listens on :8090 siehe main.go
EXPOSE 8080
# Environment defaults; können per compose überschrieben werden
ENV SERVE_DIR="." \
SERVE_ADDR=":8080" \
FORCE_ATTACHMENT="1"
ENTRYPOINT ["/bin/virtualfileserver"]