docker compose updated
This commit is contained in:
parent
1f629192e2
commit
9c1dfadbf0
2 changed files with 14 additions and 36 deletions
21
Dockerfile
21
Dockerfile
|
|
@ -1,24 +1,15 @@
|
|||
# Install dependencies only when needed
|
||||
FROM node:18-alpine AS deps
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json package-lock.json* ./
|
||||
RUN npm install
|
||||
|
||||
# Build the app
|
||||
# Step 1: Build
|
||||
FROM node:18-alpine AS builder
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=deps /app/node_modules ./node_modules
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
RUN npm install
|
||||
RUN npm run build
|
||||
|
||||
# Run the app
|
||||
FROM node:18-alpine AS runner
|
||||
WORKDIR /app
|
||||
# Step 2: Run
|
||||
FROM node:18-alpine
|
||||
|
||||
ENV NODE_ENV production
|
||||
ENV PORT 3000
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=builder /app/public ./public
|
||||
COPY --from=builder /app/.next ./.next
|
||||
|
|
|
|||
|
|
@ -2,31 +2,18 @@ version: "3.8"
|
|||
|
||||
services:
|
||||
webapp:
|
||||
container_name: webapp
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
expose:
|
||||
- "3000"
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.webapp-http.rule=Host(`planpostai.com`) || Host(`www.planpostai.com`)"
|
||||
- "traefik.http.routers.webapp-http.entrypoints=http"
|
||||
- "traefik.http.routers.webapp-http.middlewares=redirect-to-https"
|
||||
- "traefik.http.routers.webapp-https.rule=Host(`planpostai.com`) || Host(`www.planpostai.com`)"
|
||||
- "traefik.http.routers.webapp-https.entrypoints=https"
|
||||
- "traefik.http.routers.webapp-https.tls=true"
|
||||
- "traefik.http.routers.webapp-https.tls.certresolver=letsencrypt"
|
||||
- "traefik.http.routers.webapp-https.middlewares=redirect-to-www,gzip"
|
||||
- "traefik.http.services.webapp-service.loadbalancer.server.port=3000"
|
||||
- "traefik.http.routers.webapp-https.service=webapp-service"
|
||||
- "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
|
||||
- "traefik.http.middlewares.redirect-to-www.redirectregex.regex=^https?://(?:www\\.)?(.+)"
|
||||
- "traefik.http.middlewares.redirect-to-www.redirectregex.replacement=https://www.$${1}"
|
||||
- "traefik.http.middlewares.redirect-to-www.redirectregex.permanent=true"
|
||||
- "traefik.http.middlewares.gzip.compress=true"
|
||||
restart: always
|
||||
ports:
|
||||
- "3000:3000"
|
||||
networks:
|
||||
- web
|
||||
- coolify
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
|
||||
networks:
|
||||
web:
|
||||
coolify:
|
||||
external: true
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue