services: palmr-api: image: kyantech/palmr-api:latest container_name: Palmr-API healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3333/health"] interval: 10s timeout: 5s retries: 5 start_period: 30s environment: PORT: 3333 DATABASE_URL: postgresql://palmruser:palmrpass@palmr-db:5432/palmrdb?schema=public MINIO_ENDPOINT: minio.mariushosting.synology.me MINIO_APP_URL: minio.mariushosting.synology.me MINIO_PORT: 443 MINIO_USE_SSL: true MINIO_ROOT_USER: miniouser MINIO_ROOT_PASSWORD: miniopass MINIO_REGION: sa-east-1 MINIO_BUCKET_NAME: files FRONTEND_URL: https://palmr.mariushosting.synology.me MAX_FILESIZE: 1073741824 SERVER_IP: minio.mariushosting.synology.me ports: - 3333:3333 depends_on: postgres: condition: service_healthy minio: condition: service_healthy restart: on-failure:5 palmr-app: image: kyantech/palmr-app:latest container_name: Palmr-WEB healthcheck: test: ["CMD-SHELL", "nc -z 127.0.0.1 5487 || exit 1"] interval: 10s timeout: 5s retries: 3 start_period: 90s environment: NODE_ENV: production NEXT_TELEMETRY_DISABLED: 1 API_BASE_URL: http://palmr-api:3333 ports: - 5487:5487 depends_on: palmr-api: condition: service_started restart: on-failure:5 minio: image: minio/minio:RELEASE.2025-03-12T18-04-18Z container_name: Palmr-MINIO healthcheck: test: ["CMD", "curl", "-f", "http://localhost:6422/minio/health/ready"] interval: 10s timeout: 5s retries: 5 environment: MINIO_ROOT_USER: miniouser MINIO_ROOT_PASSWORD: miniopass MINIO_SITE_REGION: sa-east-1 MINIO_EXTERNAL_API_PORT: 6421 MINIO_INTERNAL_API_PORT: 443 command: server /data --console-address :443 --console-address :6422 volumes: - /volume1/docker/palmr/minio:/data:rw ports: - 6421:443 - 6422:6422 restart: on-failure:5 minio-init: image: minio/mc:RELEASE.2025-03-12T17-29-24Z container_name: Palmr-MINIO-INIT entrypoint: > sh -c " sleep 5 && mc alias set myminio http://minio:6422 miniouser miniopass && mc mb myminio/files --ignore-existing && mc anonymous set download myminio/files " depends_on: minio: condition: service_healthy restart: no postgres: image: postgres:17 container_name: Palmr-DB hostname: palmr-db security_opt: - no-new-privileges:true healthcheck: test: ["CMD", "pg_isready", "-q", "-d", "palmrdb", "-U", "palmruser"] timeout: 45s interval: 10s retries: 10 volumes: - /volume1/docker/palmr/db:/var/lib/postgresql/data:rw environment: POSTGRES_DB: palmrdb POSTGRES_USER: palmruser POSTGRES_PASSWORD: palmrpass restart: on-failure:5