From 05d4dbd68e2547657c0e93d7d2124e273534e06e Mon Sep 17 00:00:00 2001 From: Stavros Date: Fri, 10 Oct 2025 15:34:09 +0300 Subject: [PATCH] fix: ensure data directory exists on docker image --- Dockerfile | 2 ++ Dockerfile.distroless | 5 +++++ air.toml | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index fbd280b..8e2797b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -47,6 +47,8 @@ WORKDIR /tinyauth COPY --from=builder /tinyauth/tinyauth ./ +RUN mkdir -p /data + EXPOSE 3000 VOLUME ["/data"] diff --git a/Dockerfile.distroless b/Dockerfile.distroless index 786a1ef..8572b7b 100644 --- a/Dockerfile.distroless +++ b/Dockerfile.distroless @@ -38,6 +38,8 @@ COPY ./cmd ./cmd COPY ./internal ./internal COPY --from=frontend-builder /frontend/dist ./internal/assets/dist +RUN mkdir -p /data + RUN CGO_ENABLED=0 go build -ldflags "-s -w -X tinyauth/internal/config.Version=${VERSION} -X tinyauth/internal/config.CommitHash=${COMMIT_HASH} -X tinyauth/internal/config.BuildTimestamp=${BUILD_TIMESTAMP}" # Runner @@ -47,6 +49,9 @@ WORKDIR /tinyauth COPY --from=builder /tinyauth/tinyauth ./ +# Since it's distroless, we need to copy the data directory from the builder stage +COPY --from=builder /tinyauth/data /data + EXPOSE 3000 VOLUME ["/data"] diff --git a/air.toml b/air.toml index f84163b..1772c27 100644 --- a/air.toml +++ b/air.toml @@ -2,7 +2,7 @@ root = "/tinyauth" tmp_dir = "tmp" [build] -pre_cmd = ["mkdir -p internal/assets/dist", "echo 'backend running' > internal/assets/dist/index.html", "go install github.com/go-delve/delve/cmd/dlv@v1.25.0"] +pre_cmd = ["mkdir -p internal/assets/dist", "mkdir -p /data", "echo 'backend running' > internal/assets/dist/index.html", "go install github.com/go-delve/delve/cmd/dlv@v1.25.0"] cmd = "CGO_ENABLED=0 go build -gcflags=\"all=-N -l\" -o tmp/tinyauth ." bin = "/go/bin/dlv --listen :4000 --headless=true --api-version=2 --accept-multiclient --log=true exec tmp/tinyauth --continue --check-go-version=false" include_ext = ["go"]