From 1516169ef712b93238e228e0fa52ab8d112c70c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milo=C5=A1=20Jovanovi=C4=87?= Date: Thu, 10 Sep 2026 13:06:19 +0200 Subject: [PATCH] add dockerignore --- .dockerignore | 7 +++++++ Dockerfile | 13 +++++++++++++ docker-compose.yml | 21 +++++++++++++++++++++ 3 files changed, 41 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..a577a9b --- /dev/null +++ b/.dockerignore @@ -0,0 +1,7 @@ +.git +.env +*.db +*.db-wal +*.db-shm +bin/ +st-agent-worker diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..df45f1a --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM golang:1.23-alpine AS build +WORKDIR /src +COPY go.mod go.sum ./ +RUN go mod download +COPY . . +RUN CGO_ENABLED=0 go build -o /worker . + +FROM alpine:3.20 +RUN apk add --no-cache ca-certificates tzdata +COPY --from=build /worker /worker +RUN mkdir -p /data +EXPOSE 8080 +ENTRYPOINT ["/worker"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..37e6a7c --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,21 @@ +services: + worker: + build: . + restart: unless-stopped + environment: + ST_API_KEY: ${ST_API_KEY} + WEBHOOK_SECRET: ${WEBHOOK_SECRET} + ELIGIBLE_APPOINTMENTS: ${ELIGIBLE_APPOINTMENTS} + DB_PATH: /data/worker.db + DRY_RUN: ${DRY_RUN:-} + volumes: + - worker-data:/data + healthcheck: + test: ["CMD", "wget", "-qO-", "http://localhost:8080/healthz"] + interval: 30s + timeout: 5s + retries: 3 + start_period: 120s + +volumes: + worker-data: