nats-ui/Dockerfile
admin 8217818036
All checks were successful
CI/CD / Lint & Test (push) Successful in 52s
CI/CD / Build & Push Docker image (hub.p42.ru) (push) Successful in 2m57s
Bug fixes pipeline
2026-02-09 16:59:48 +07:00

32 lines
754 B
Docker

# Build stage
FROM golang:1.21-alpine AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY main.go index.html favicon.ico ./
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" -o nats-ui main.go
# Runtime stage
FROM alpine:3.19
RUN apk --no-cache add ca-certificates tzdata && \
adduser -D -u 1000 -h /app appuser
WORKDIR /app
COPY --from=builder /app/nats-ui ./
# Конфиг только внешний: не встраивается в образ. При запуске обязательно монтировать config.yaml:
# docker run -v /path/to/config.yaml:/app/config.yaml ...
RUN chmod +x nats-ui && chown -R appuser:appuser /app
EXPOSE 8080
USER appuser
ENTRYPOINT ["./nats-ui"]
CMD ["config.yaml"]