services: postgres: image: docker.arvancloud.ir/postgres:17.8-alpine3.23 container_name: pgsql restart: unless-stopped ports: - "8091:5432" environment: POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - ruya-db:/var/lib/postgresql/data networks: - ruya healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"] interval: 30s timeout: 10s retries: 3 backend: build: context: ${BACKEND_PATH} dockerfile: Dockerfile.production container_name: laravel tty: true restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:80"] interval: 30s timeout: 10s retries: 3 ports: - "8003:80" - "443:443" - "443:443/udp" volumes: - ${BACKEND_PATH}:/var/www/${PROJECT_NAME} # - caddy_data:/data # - caddy_config:/config depends_on: - postgres networks: - ruya logging: driver: "syslog" options: syslog-address: "tcp://host.docker.internal:514" tag: "laravel-backend" syslog-facility: "daemon" max-size: "10m" mem_limit: 512M cpus: 1 volumes: ruya-db: driver: local networks: ruya: driver: bridge