Compare commits

...

2 commits

Author SHA1 Message Date
b3d65e0a1e force lf ending of script 2024-12-07 15:05:24 -05:00
567a765f94 fixed nginx 2024-12-07 14:58:15 -05:00
4 changed files with 30 additions and 11 deletions

View file

@ -12,9 +12,10 @@ RUN npm install
RUN npm run build
EXPOSE 5173
ENV PORT=5173
EXPOSE ${PORT}
HEALTHCHECK --interval=30s --timeout=10s --start-period=30s --retries=3 \
CMD curl -f http://localhost:5173 || exit 1
CMD curl -f http://localhost:${PORT} || exit 1
CMD [ "npm", "run", "preview" ]

View file

@ -3,21 +3,29 @@ version: '3'
services:
frontend:
container_name: frontend
build:
context: ./client
dockerfile: Dockerfile
container_name: frontend
ports:
- "5173:5173"
networks:
- quiz_network
restart: always
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:$${PORT} || exit 1"]
interval: 5s
timeout: 10s
start_period: 5s
retries: 6
backend:
build:
context: ./server
dockerfile: Dockerfile
container_name: backend
networks:
- quiz_network
ports:
- "3000:3000"
volumes:
@ -30,14 +38,15 @@ services:
SENDER_EMAIL: infoevaluetonsavoir@gmail.com
EMAIL_PSW: 'vvml wmfr dkzb vjzb'
JWT_SECRET: haQdgd2jp09qb897GeBZyJetC8ECSpbFJe
FRONTEND_URL: "http://localhost:5173"
#QUIZROOM_IMAGE: ghcr.io/ets-cfuhrman-pfe/evaluetonsavoir-quizroom:latest
depends_on:
mongo:
condition: service_healthy
networks:
- quiz_network
restart: always
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:$${PORT}/health || exit 1"]
interval: 5s
timeout: 10s
start_period: 5s
retries: 6
quizroom: # Forces image to update
build:
@ -49,6 +58,12 @@ services:
networks:
- quiz_network
restart: always
healthcheck:
test: ["CMD", "/usr/src/app/healthcheck.sh"]
interval: 5s
timeout: 10s
start_period: 5s
retries: 6
nginx:
build:
@ -72,7 +87,7 @@ services:
# - BACKEND_HOST=backend
# - BACKEND_PORT=3000
healthcheck:
test: ["CMD-SHELL", "wget --spider http://0.0.0.0:${PORT}/health || exit 1"]
test: ["CMD-SHELL", "wget --spider http://0.0.0.0:$${PORT}/health || exit 1"]
interval: 5s
timeout: 10s
start_period: 5s

View file

@ -61,6 +61,7 @@ RUN echo 'load_module modules/ngx_http_js_module.so;' > /tmp/nginx.conf && \
COPY templates/default.conf /etc/nginx/templates/
COPY njs/main.js /etc/nginx/njs/
COPY entrypoint.sh /entrypoint.sh
RUN dos2unix /entrypoint.sh
ENV PORT=80 \
FRONTEND_HOST=frontend \
@ -85,4 +86,5 @@ HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD wget -q --spider http://0.0.0.0:${PORT}/health || exit 1
# Start Nginx using entrypoint script
# CMD [ "/bin/sh","-c","sleep 3600" ] # For debugging
ENTRYPOINT [ "/entrypoint.sh" ]

View file

@ -8,7 +8,8 @@ RUN npm install
COPY ./ .
EXPOSE 4400
ENV PORT=3000
EXPOSE ${PORT}
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD curl -f http://localhost:${PORT}/health || exit 1