Add Technical Kiwi website with Go, templ, and HTMX.
Single-page site with gallery by album and event, contact form over SMTP, Docker dev/prod setup, and on-server image derivatives. Gallery photos stay local (app/images/ is gitignored). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
29
Dockerfile
Normal file
29
Dockerfile
Normal file
@@ -0,0 +1,29 @@
|
||||
ARG GO_VERSION=1.25
|
||||
FROM golang:${GO_VERSION}-bookworm AS builder
|
||||
|
||||
RUN go install github.com/a-h/templ/cmd/templ@latest
|
||||
|
||||
WORKDIR /build
|
||||
COPY app/go.mod app/go.sum ./
|
||||
RUN go mod download
|
||||
|
||||
COPY app/ ./
|
||||
RUN templ generate && CGO_ENABLED=0 go build -ldflags="-s -w" -o /server ./cmd/server
|
||||
|
||||
FROM debian:bookworm-slim
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends ca-certificates \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=builder /server ./server
|
||||
COPY app/static ./static
|
||||
COPY app/images ./images
|
||||
RUN ./server -thumbs
|
||||
|
||||
EXPOSE 8080
|
||||
ENV ADDR=:8080
|
||||
|
||||
CMD ["./server"]
|
||||
Reference in New Issue
Block a user