Dockerfile
Rama master · réplica de lectura del repositorio original.
# Build stage
FROM docker.io/library/golang:1.27.3-alpine3.24 AS builder
RUN apk add --no-cache build-base git gcc musl-dev && rm -rf /var/cache/apk/*
WORKDIR /app
COPY go.mod go.sum vendor/ ./
COPY . .
ARG VERSION=dev
RUN CGO_ENABLED=0 GOOS=linux go build -mod=vendor -a -installsuffix cgo -ldflags="-s -w -X 'wiki-go/internal/version.Version=${VERSION}'" -o wiki-go .
# Final stage
FROM docker.io/library/alpine:3.24
RUN apk add --no-cache bash ca-certificates curl linux-pam tzdata && rm -rf /var/cache/apk/*
ARG PUID=1000
ARG PGID=1000
RUN addgroup -g ${PGID} appgroup && adduser -u ${PUID} -G appgroup -s /bin/bash -D appuser
WORKDIR /wiki
RUN mkdir -p /wiki/data && chown -R appuser:appgroup /wiki && chmod -R 755 /wiki
COPY --chown=appuser:appgroup --chmod=755 --from=builder /app/wiki-go .
USER appuser
EXPOSE 8080 443
VOLUME ["/wiki/data"]
ENTRYPOINT ["./wiki-go"]
CMD []