FROM golang:1.25-alpine as build_go RUN apk add --no-cache curl WORKDIR /app COPY go.mod go.sum ./ RUN go mod download COPY . . RUN go install github.com/a-h/templ/cmd/templ@latest RUN templ generate RUN go build -o main cmd/main.go # Stage 2, distribution container FROM golang:1.25-alpine EXPOSE 8080 VOLUME /sorted VOLUME /frontend VOLUME /characters ENV PORT 8080 ENV DB_HOST "" ENV DB_PORT "" ENV DB_USERNAME "" ENV DB_PASSWORD "" ENV DB_NAME "" ENV MUSIC_PATH "" ENV CHARACTERS_PATH "" COPY --from=build_go /app/main . COPY ./songs/ ./songs/ CMD ./main