palmrnew.yamp
                        
                             · 2.9 KiB · Text
                        
                    
                    
                      
                        Raw
                      
                      
                        
                          
                        
                    
                    
                
                
            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
                | 1 | services: | 
| 2 | palmr-api: | 
| 3 | image: kyantech/palmr-api:latest | 
| 4 | container_name: Palmr-API | 
| 5 | healthcheck: | 
| 6 | test: ["CMD", "curl", "-f", "http://localhost:3333/health"] | 
| 7 | interval: 10s | 
| 8 | timeout: 5s | 
| 9 | retries: 5 | 
| 10 | start_period: 30s | 
| 11 | environment: | 
| 12 | PORT: 3333 | 
| 13 | DATABASE_URL: postgresql://palmruser:palmrpass@palmr-db:5432/palmrdb?schema=public | 
| 14 | MINIO_ENDPOINT: minio.mariushosting.synology.me | 
| 15 | MINIO_APP_URL: minio.mariushosting.synology.me | 
| 16 | MINIO_PORT: 443 | 
| 17 | MINIO_USE_SSL: true | 
| 18 | MINIO_ROOT_USER: miniouser | 
| 19 | MINIO_ROOT_PASSWORD: miniopass | 
| 20 | MINIO_REGION: sa-east-1 | 
| 21 | MINIO_BUCKET_NAME: files | 
| 22 | FRONTEND_URL: https://palmr.mariushosting.synology.me | 
| 23 | MAX_FILESIZE: 1073741824 | 
| 24 | SERVER_IP: minio.mariushosting.synology.me | 
| 25 | ports: | 
| 26 | - 3333:3333 | 
| 27 | depends_on: | 
| 28 | postgres: | 
| 29 | condition: service_healthy | 
| 30 | minio: | 
| 31 | condition: service_healthy | 
| 32 | restart: on-failure:5 | 
| 33 | |
| 34 | palmr-app: | 
| 35 | image: kyantech/palmr-app:latest | 
| 36 | container_name: Palmr-WEB | 
| 37 | healthcheck: | 
| 38 | test: ["CMD-SHELL", "nc -z 127.0.0.1 5487 || exit 1"] | 
| 39 | interval: 10s | 
| 40 | timeout: 5s | 
| 41 | retries: 3 | 
| 42 | start_period: 90s | 
| 43 | environment: | 
| 44 | NODE_ENV: production | 
| 45 | NEXT_TELEMETRY_DISABLED: 1 | 
| 46 | API_BASE_URL: http://palmr-api:3333 | 
| 47 | ports: | 
| 48 | - 5487:5487 | 
| 49 | depends_on: | 
| 50 | palmr-api: | 
| 51 | condition: service_started | 
| 52 | restart: on-failure:5 | 
| 53 | |
| 54 | minio: | 
| 55 | image: minio/minio:RELEASE.2025-03-12T18-04-18Z | 
| 56 | container_name: Palmr-MINIO | 
| 57 | healthcheck: | 
| 58 | test: ["CMD", "curl", "-f", "http://localhost:6422/minio/health/ready"] | 
| 59 | interval: 10s | 
| 60 | timeout: 5s | 
| 61 | retries: 5 | 
| 62 | environment: | 
| 63 | MINIO_ROOT_USER: miniouser | 
| 64 | MINIO_ROOT_PASSWORD: miniopass | 
| 65 | MINIO_SITE_REGION: sa-east-1 | 
| 66 | MINIO_EXTERNAL_API_PORT: 6421 | 
| 67 | MINIO_INTERNAL_API_PORT: 443 | 
| 68 | command: server /data --console-address :443 --console-address :6422 | 
| 69 | volumes: | 
| 70 | - /volume1/docker/palmr/minio:/data:rw | 
| 71 | ports: | 
| 72 | - 6421:443 | 
| 73 | - 6422:6422 | 
| 74 | restart: on-failure:5 | 
| 75 | |
| 76 | minio-init: | 
| 77 | image: minio/mc:RELEASE.2025-03-12T17-29-24Z | 
| 78 | container_name: Palmr-MINIO-INIT | 
| 79 | entrypoint: > | 
| 80 | sh -c " | 
| 81 | sleep 5 && | 
| 82 | mc alias set myminio http://minio:6422 miniouser miniopass && | 
| 83 | mc mb myminio/files --ignore-existing && | 
| 84 | mc anonymous set download myminio/files | 
| 85 | " | 
| 86 | depends_on: | 
| 87 | minio: | 
| 88 | condition: service_healthy | 
| 89 | restart: no | 
| 90 | |
| 91 | postgres: | 
| 92 | image: postgres:17 | 
| 93 | container_name: Palmr-DB | 
| 94 | hostname: palmr-db | 
| 95 | security_opt: | 
| 96 | - no-new-privileges:true | 
| 97 | healthcheck: | 
| 98 | test: ["CMD", "pg_isready", "-q", "-d", "palmrdb", "-U", "palmruser"] | 
| 99 | timeout: 45s | 
| 100 | interval: 10s | 
| 101 | retries: 10 | 
| 102 | volumes: | 
| 103 | - /volume1/docker/palmr/db:/var/lib/postgresql/data:rw | 
| 104 | environment: | 
| 105 | POSTGRES_DB: palmrdb | 
| 106 | POSTGRES_USER: palmruser | 
| 107 | POSTGRES_PASSWORD: palmrpass | 
| 108 | restart: on-failure:5 |