diff --git a/Dockerfile b/Dockerfile index 9b03eb9..74d1382 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,24 +1,17 @@ -# ---------- Build stage ---------- FROM golang:1.24-alpine AS build WORKDIR /src -# optional, aber nett für reproduzierbare Builds: ENV CGO_ENABLED=0 -# Falls du private CAs brauchst, sonst weglassen: RUN apk add --no-cache ca-certificates COPY go.* ./ RUN go mod download COPY . . RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /out/mirrorweb - -# ---------- Runtime stage ---------- FROM alpine:3.22 -# Für TLS (falls du Traefik mal nicht davor hast) und saubere Zeit: RUN apk add --no-cache ca-certificates tzdata && update-ca-certificates -# Non-root User RUN addgroup -S app && adduser -S -G app app USER app WORKDIR / -VOLUME ["/data"] # hier hängt dein Mirror-Volume read-only +VOLUME ["/data"] EXPOSE 8080 COPY --from=build /out/mirrorweb /mirrorweb ENTRYPOINT ["/mirrorweb"] diff --git a/compose.yml b/compose.yml index 7a290ff..cf52f21 100644 --- a/compose.yml +++ b/compose.yml @@ -16,15 +16,7 @@ services: - updater volumes: - /docker/ubuntu-apt-mirror/data:/data - command: > - -archive=/data/mirror/archive.ubuntu.com/ubuntu - -security=/data/mirror/security.ubuntu.com/ubuntu - -old=/data/mirror/old-releases.ubuntu.com/ubuntu - -autoindex=true - -cache=600 - -addr=:8080 - -trust-proxy=true - -log-json=false # auf true setzen für JSON-Lines + command: -archive=/data/mirror/archive.ubuntu.com/ubuntu -security=/data/mirror/security.ubuntu.com/ubuntu -old=/data/mirror/old-releases.ubuntu.com/ubuntu -autoindex=true -cache=600 -addr=:8080 -trust-proxy=true -log-json=false labels: - traefik.enable=true - traefik.http.routers.ubuntu_mirror.rule=Host(`ubuntu-24-04.send.nrw`)