**feat(docs):** add Dockerfile and Nginx config for static site deployment
All checks were successful
CI / build-test (push) Successful in 1m1s
All checks were successful
CI / build-test (push) Successful in 1m1s
- Introduce `Dockerfile` for building and serving static site using Bun and Nginx - Add `nginx.conf` for configuring static file caching and routing rules - Expose port 80 for containerized deployment
This commit is contained in:
11
docs/Dockerfile
Normal file
11
docs/Dockerfile
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
FROM oven/bun:1-alpine AS build
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package.json bun.lock ./
|
||||||
|
RUN bun install --frozen-lockfile
|
||||||
|
COPY . .
|
||||||
|
RUN bun run build
|
||||||
|
|
||||||
|
FROM nginx:alpine
|
||||||
|
COPY --from=build /app/.vitepress/dist /usr/share/nginx/html
|
||||||
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||||
|
EXPOSE 80
|
||||||
15
docs/nginx.conf
Normal file
15
docs/nginx.conf
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
index index.html;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ $uri.html /index.html;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Cache static assets
|
||||||
|
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff2?)$ {
|
||||||
|
expires 1y;
|
||||||
|
add_header Cache-Control "public, immutable";
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user