Γ–ffentliche Dateiansicht: Raw-Dateien, Tree, Releases und Issues sind ohne Login verfΓΌgbar.
Dockerfile
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
### ─── Build stage ────────────────────────────────────────────────────────────
FROM --platform=$BUILDPLATFORM golang:1.26.1-alpine AS builder

ARG TARGETOS=linux
ARG TARGETARCH

RUN apk add --no-cache git

WORKDIR /app

# Cache dependency downloads separately from source changes
COPY go.mod go.sum ./
RUN --mount=type=cache,target=/go/pkg/mod \
    go mod download

COPY . .
RUN --mount=type=cache,target=/go/pkg/mod \
    --mount=type=cache,target=/root/.cache/go-build \
    CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build \
    -trimpath \
    -ldflags="-s -w" \
    -o noxway .

### ─── Final image ────────────────────────────────────────────────────────────
FROM alpine:3.20

# ca-certificates: required for outbound HTTPS requests to backends
# tzdata: correct timezone handling in logs
RUN apk add --no-cache ca-certificates tzdata && \
    addgroup -S noxway && \
    adduser  -S -G noxway noxway

WORKDIR /app
RUN mkdir -p certs log && chown -R noxway:noxway /app

COPY --from=builder /app/noxway /app/noxway

USER noxway

EXPOSE 8080 443 80

CMD ["./noxway"]
Sprachen
Go 46%
JavaScript 45%
Markdown 3.3%
HTML 2.5%
YAML 1.7%
JSON 1.1%
Klonen
HTTPS