From 38141ce052486a9cd59e15c1b723d9ab7e1adbd5 Mon Sep 17 00:00:00 2001 From: Michael Housh Date: Wed, 2 Apr 2025 14:52:14 -0400 Subject: [PATCH] feat: Adds Dockerfile. --- Dockerfile | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..589692e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +FROM swift:5.10 AS build + +WORKDIR /build + +# First just resolve dependencies. +COPY ./Package.* ./ +RUN --mount=type=cache,target=/build/.build swift package resolve \ + $([ -f ./Package.resolved ] && echo "--force-resolved-versions" || true) + +# Copy entire repo into container +COPY . . + +# Build the static site. +RUN --mount=type=cache,target=/build/.build swift run + +# ================================================== +# Run Image +# ================================================== +FROM caddy:2.9.1-alpine + +WORKDIR /app + +COPY --from=build /build/deploy . + +EXPOSE 80 + +CMD ["/usr/bin/caddy", "file-server", "--root", "/app", "--listen", ":80"]