ci(build): 💚 Use static web server in Docker container

This commit is contained in:
Jesse Wierzbinski 2024-12-07 14:53:00 +01:00
parent d9283e4c7e
commit 80ad22c395
No known key found for this signature in database
4 changed files with 51 additions and 6 deletions

View file

@ -1,4 +1,4 @@
FROM imbios/bun-node:22-alpine AS base
FROM oven/bun:1.1.38-alpine AS base
# Install dependencies into temp directory
# This will cache them and speed up future builds
@ -6,18 +6,20 @@ FROM base AS install
RUN mkdir -p /temp/dev
COPY package.json bun.lockb /temp/dev/
RUN cd /temp/dev && bun install --frozen-lockfile
RUN cd /temp/dev && bun install --production --frozen-lockfile
FROM base AS builder
COPY . /app
COPY --from=install /temp/dev/node_modules /app/node_modules
RUN cd /app && bun run emojis:generate
RUN cd /app && bun run build --preset bun
RUN cd /app && bun run build
FROM oven/bun:1.1.38-alpine AS final
# Run final web server
FROM ghcr.io/static-web-server/static-web-server:2-alpine AS final
COPY --from=builder /app/.output/ /app
COPY --from=builder /app/.output/public /app/public
COPY sws.toml /etc/config.toml
LABEL org.opencontainers.image.authors="Gaspard Wierzbinski (https://cpluspatch.com)"
LABEL org.opencontainers.image.source="https://github.com/versia-pub/frontend"
@ -27,4 +29,5 @@ LABEL org.opencontainers.image.title="Versia-FE"
LABEL org.opencontainers.image.description="Frontend for the Versia Server Project"
WORKDIR /app
CMD ["bun", "run", "server/index.mjs"]
EXPOSE 3000
CMD ["static-web-server", "--config-file", "/etc/config.toml"]