added docker

This commit is contained in:
potetmos
2025-07-02 14:12:27 +02:00
parent 9e93f904d7
commit 4fe9e3243a
4 changed files with 56 additions and 6 deletions

17
.dockerignore Normal file
View File

@ -0,0 +1,17 @@
node_modules
npm-debug.log
dist
.git
.gitignore
Dockerfile
Dockerfile*
.dockerignore
*.md
*.tsbuildinfo
.env
.env.*
.vscode
.idea
*.swp
*.swo
*.DS_Store

View File

@ -1,11 +1,14 @@
FROM node:22-alpine AS build
# Use a Node image to build the Astro project
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm install
RUN npm run build
FROM nginx:alpine AS runtime
# Use Nginx to serve the static site
FROM nginx:alpine AS production
COPY --from=builder /app/dist /usr/share/nginx/html
COPY ./nginx.conf /etc/nginx/nginx.conf
COPY --from=build /app/dist /usr/share/nginx/html
EXPOSE 8080
EXPOSE 3000
CMD ["nginx", "-g", "daemon off;"]

View File

@ -6,7 +6,7 @@ events {
http {
server {
listen 8080;
listen 3000;
server_name _;
root /usr/share/nginx/html;

30
src/Dockerfile Normal file
View File

@ -0,0 +1,30 @@
# Use the official Astro image from Docker Hub
FROM node:20-alpine AS builder
WORKDIR /app
# Install Astro CLI
RUN npm create astro@latest -- --yes
# Copy your project files
COPY . .
# Install dependencies
RUN npm install
# Build the Astro project
RUN npm run build
# Production image
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/package*.json ./
RUN npm install --production
EXPOSE 3000
CMD ["npm", "start"]