Update für Docker und automatischer Build
All checks were successful
release-tag / release-image (push) Successful in 1m45s
All checks were successful
release-tag / release-image (push) Successful in 1m45s
This commit is contained in:
34
Dockerfile
Normal file
34
Dockerfile
Normal file
@@ -0,0 +1,34 @@
|
||||
# -------- 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/edgewol
|
||||
|
||||
# 2. Runtime-Stage
|
||||
FROM alpine:3.22
|
||||
|
||||
# HTTPS-Callouts in Alpine brauchen ca-certificates
|
||||
RUN apk add --no-cache ca-certificates
|
||||
RUN mkdir /data
|
||||
#RUN mkdir /dynamicsrc
|
||||
#RUN mkdir /tempsrc
|
||||
COPY --from=builder /bin/edgewol /bin/edgewol
|
||||
COPY ./static /data/static
|
||||
# COPY ./static /tempsrc/static
|
||||
#COPY ./dynamicsrc /dynamicsrc
|
||||
|
||||
# Default listens on :8080 – siehe main.go
|
||||
EXPOSE 8080
|
||||
|
||||
# Environment defaults; können per compose überschrieben werden
|
||||
ENV EW_USERNAME=admin \
|
||||
EW_PASSWORD=admin \
|
||||
EW_DB=/data/machines.json \
|
||||
EW_PRODUCTIVE=true
|
||||
|
||||
|
||||
ENTRYPOINT ["/bin/edgewol"]
|
Reference in New Issue
Block a user