medqux.yaml
· 1.7 KiB · YAML
Ham
services:
postgres:
image: postgres:17-alpine
container_name: Mediqux-DB
environment:
POSTGRES_DB: mediqux
POSTGRES_USER: mediquxuser
POSTGRES_PASSWORD: mediquxpass
volumes:
- /volume1/docker/mediqux/db:/var/lib/postgresql/data:rw
healthcheck:
test: ["CMD-SHELL", "pg_isready -U mediquxuser -d mediqux"]
interval: 10s
timeout: 5s
retries: 5
backend:
image: ghcr.io/dmjoh/mediqux/mediqux-backend:latest
container_name: Mediqux-BACKEND
environment:
NODE_ENV: production
DB_HOST: postgres
DB_PORT: 5432
DB_NAME: mediqux
DB_USER: mediquxuser
DB_PASSWORD: mediquxpass
JWT_SECRET: dOxZYTTZgXKMHkqLBIQVImayQXAVWdzGBPuFJKggzcgvgPJPXpWzqzKaUOIOGGIr
FRONTEND_URL: mediqux.mariushosting.synology.me
MAX_FILE_SIZE: 500MB
UPLOAD_PATH: /app/uploads
PUID: 1026
PGID: 100
ports:
- 3019:3000
volumes:
- /volume1/docker/mediqux/uploads:/app/uploads:rw
depends_on:
postgres:
condition: service_healthy
restart: on-failure:5
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/api/health', (res) => process.exit(res.statusCode === 200 ? 0 : 1))"]
interval: 30s
timeout: 10s
retries: 3
frontend:
image: ghcr.io/dmjoh/mediqux/mediqux-frontend:latest
container_name: Mediqux_frontend
environment:
MEDIQUX_API_URL: mediquxapi.mariushosting.synology.me/api
ports:
- 3018:80
depends_on:
- backend
restart: on-failure:5
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
interval: 30s
timeout: 10s
retries: 3
1 | services: |
2 | postgres: |
3 | image: postgres:17-alpine |
4 | container_name: Mediqux-DB |
5 | environment: |
6 | POSTGRES_DB: mediqux |
7 | POSTGRES_USER: mediquxuser |
8 | POSTGRES_PASSWORD: mediquxpass |
9 | volumes: |
10 | - /volume1/docker/mediqux/db:/var/lib/postgresql/data:rw |
11 | healthcheck: |
12 | test: ["CMD-SHELL", "pg_isready -U mediquxuser -d mediqux"] |
13 | interval: 10s |
14 | timeout: 5s |
15 | retries: 5 |
16 | |
17 | backend: |
18 | image: ghcr.io/dmjoh/mediqux/mediqux-backend:latest |
19 | container_name: Mediqux-BACKEND |
20 | environment: |
21 | NODE_ENV: production |
22 | DB_HOST: postgres |
23 | DB_PORT: 5432 |
24 | DB_NAME: mediqux |
25 | DB_USER: mediquxuser |
26 | DB_PASSWORD: mediquxpass |
27 | JWT_SECRET: dOxZYTTZgXKMHkqLBIQVImayQXAVWdzGBPuFJKggzcgvgPJPXpWzqzKaUOIOGGIr |
28 | FRONTEND_URL: mediqux.mariushosting.synology.me |
29 | MAX_FILE_SIZE: 500MB |
30 | UPLOAD_PATH: /app/uploads |
31 | PUID: 1026 |
32 | PGID: 100 |
33 | ports: |
34 | - 3019:3000 |
35 | volumes: |
36 | - /volume1/docker/mediqux/uploads:/app/uploads:rw |
37 | depends_on: |
38 | postgres: |
39 | condition: service_healthy |
40 | restart: on-failure:5 |
41 | healthcheck: |
42 | test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/api/health', (res) => process.exit(res.statusCode === 200 ? 0 : 1))"] |
43 | interval: 30s |
44 | timeout: 10s |
45 | retries: 3 |
46 | |
47 | frontend: |
48 | image: ghcr.io/dmjoh/mediqux/mediqux-frontend:latest |
49 | container_name: Mediqux_frontend |
50 | environment: |
51 | MEDIQUX_API_URL: mediquxapi.mariushosting.synology.me/api |
52 | ports: |
53 | - 3018:80 |
54 | depends_on: |
55 | - backend |
56 | restart: on-failure:5 |
57 | healthcheck: |
58 | test: ["CMD", "curl", "-f", "http://localhost:80"] |
59 | interval: 30s |
60 | timeout: 10s |
61 | retries: 3 |