frontend docker refactor
This commit is contained in:
parent
63e33a45b4
commit
8c7fb8c6bf
8 changed files with 30 additions and 30 deletions
|
|
@ -6,7 +6,10 @@ COPY package*.json tsconfig*.json prisma.config.ts ./
|
||||||
COPY prisma ./prisma
|
COPY prisma ./prisma
|
||||||
COPY src ./src
|
COPY src ./src
|
||||||
|
|
||||||
RUN apt-get update -y && apt-get install -y openssl
|
RUN apt-get update -y && \
|
||||||
|
apt-get install -y openssl && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
RUN npm install --omit=dev
|
RUN npm install --omit=dev
|
||||||
RUN npm run prisma:generate
|
RUN npm run prisma:generate
|
||||||
|
|
||||||
|
|
@ -18,9 +21,6 @@ RUN npm run build
|
||||||
FROM base
|
FROM base
|
||||||
COPY --from=builder /app/dist ./dist
|
COPY --from=builder /app/dist ./dist
|
||||||
COPY --from=builder /app/prisma ./prisma
|
COPY --from=builder /app/prisma ./prisma
|
||||||
# COPY --from=builder /app/node_modules ./node_modules
|
|
||||||
COPY prisma.config.ts /app/
|
|
||||||
|
|
||||||
|
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,6 @@ WORKDIR /app
|
||||||
|
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
|
|
||||||
RUN apt-get update -y && apt-get install -y openssl
|
|
||||||
|
|
||||||
RUN npm install
|
RUN npm install
|
||||||
|
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@
|
||||||
"cors": "^2.8.5",
|
"cors": "^2.8.5",
|
||||||
"dotenv": "^17.0.1",
|
"dotenv": "^17.0.1",
|
||||||
"express": "^5.1.0",
|
"express": "^5.1.0",
|
||||||
"knex": "^3.1.0",
|
|
||||||
"pg": "^8.17.2",
|
"pg": "^8.17.2",
|
||||||
"prisma": "7.2.0"
|
"prisma": "7.2.0"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,6 @@ services:
|
||||||
- POSTGRES_USER=${DB_USER}
|
- POSTGRES_USER=${DB_USER}
|
||||||
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
||||||
- POSTGRES_DB=${DB_NAME}
|
- POSTGRES_DB=${DB_NAME}
|
||||||
ports:
|
|
||||||
- "${DB_PORT}:5432"
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./db:/var/lib/postgresql/data
|
- ./db:/var/lib/postgresql/data
|
||||||
backend:
|
backend:
|
||||||
|
|
@ -19,10 +17,7 @@ services:
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
build:
|
build:
|
||||||
context: ./backend
|
context: ./backend
|
||||||
ports:
|
|
||||||
- "${BACKEND_PORT}:3000"
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./backend:/usr/src/app
|
|
||||||
- ./logs:/logs
|
- ./logs:/logs
|
||||||
environment:
|
environment:
|
||||||
- DB_USER=${DB_USER}
|
- DB_USER=${DB_USER}
|
||||||
|
|
@ -34,9 +29,6 @@ services:
|
||||||
image: forgejo.fredzernia.com/fred/recipes_frontend:latest
|
image: forgejo.fredzernia.com/fred/recipes_frontend:latest
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
build:
|
build:
|
||||||
context: ./backend
|
context: ./frontend
|
||||||
ports:
|
ports:
|
||||||
- "${FRONTEND_PORT}:80"
|
- "${FRONTEND_PORT}:80"
|
||||||
volumes:
|
|
||||||
- ./frontend:/usr/src/app
|
|
||||||
- ./dist/recipes_frontend:/usr/src/app/dist
|
|
||||||
|
|
|
||||||
13
frontend/Caddyfile
Normal file
13
frontend/Caddyfile
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
:80 {
|
||||||
|
# Backend
|
||||||
|
handle /api/* {
|
||||||
|
reverse_proxy recipes_backend:3000
|
||||||
|
}
|
||||||
|
|
||||||
|
# Frontend
|
||||||
|
handle {
|
||||||
|
root * /srv/
|
||||||
|
try_files {path} /index.html
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,13 +1,15 @@
|
||||||
FROM node:22-alpine
|
FROM node:22-alpine AS builder
|
||||||
|
|
||||||
WORKDIR /usr/src/app
|
WORKDIR /app
|
||||||
|
COPY package*.json tsconfig*.json postcss.config.js tailwind.config.js eslint.config.js vite.config.ts index.html ./
|
||||||
|
COPY src ./src
|
||||||
|
|
||||||
COPY package*.json ./
|
RUN apk update && apk upgrade
|
||||||
|
RUN npm install
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
RUN if [ "$NODE_ENV" = "dev" ]; then npm install; else npm install --omit=dev; fi
|
FROM caddy:2.10
|
||||||
|
COPY Caddyfile /etc/caddy/Caddyfile
|
||||||
COPY . .
|
COPY --from=builder /app/dist /srv
|
||||||
|
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|
||||||
CMD npm run $NODE_ENV
|
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,6 @@ COPY package*.json ./
|
||||||
|
|
||||||
RUN npm install;
|
RUN npm install;
|
||||||
|
|
||||||
COPY . .
|
|
||||||
|
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|
||||||
CMD npm run dev
|
CMD ["npm", "run", "dev"]
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,7 @@
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite --host 0.0.0.0 --port 80",
|
"dev": "vite --host 0.0.0.0 --port 80",
|
||||||
"production": "npx tsc -b && vite build",
|
"build": "tsc -b && vite build"
|
||||||
"ci": "tsc -b && vite build",
|
|
||||||
"lint": "eslint ."
|
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"react": "^19.1.0",
|
"react": "^19.1.0",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue