diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..574f98c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,28 @@ +FROM node:22-bookworm-slim AS builder + +WORKDIR /app + +COPY package*.json ./ + +RUN npm ci + +COPY . . + +RUN npm run build + + +FROM node:22-bookworm-slim AS runner + +WORKDIR /app + +ENV NODE_ENV=production +ENV HOST=0.0.0.0 +ENV PORT=4321 + +COPY --from=builder /app/package*.json ./ +COPY --from=builder /app/node_modules ./node_modules +COPY --from=builder /app/dist ./dist + +EXPOSE 4321 + +CMD ["node", "./dist/server/entry.mjs"] diff --git a/compose.yaml b/compose.yaml new file mode 100644 index 0000000..2079f66 --- /dev/null +++ b/compose.yaml @@ -0,0 +1,21 @@ +services: + portfolio: + build: + context: . + dockerfile: Dockerfile + container_name: semyon-portfolio + restart: unless-stopped + env_file: + - .env + environment: + NODE_ENV: production + HOST: 0.0.0.0 + PORT: 4321 + expose: + - "4321" + networks: + - web + +networks: + web: + name: portfolio_web diff --git a/src/components/Header.astro b/src/components/Header.astro index 74d8b3e..2d45c33 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -23,7 +23,7 @@