name: httpserver x-logging: &a1 driver: json-file options: max-size: 10m max-file: "3" services: http1: image: php:8.2-apache container_name: http1 restart: unless-stopped environment: - TZ=America/Los_Angeles volumes: - ./data:/var/www/html - ./data/gw.html:/var/www/html/index.html - ./data/chat-proxy.conf:/etc/apache2/conf-enabled/chat-proxy.conf command: > bash -c "a2enmod proxy proxy_http proxy_wstunnel rewrite && apache2-foreground" ports: - 9797:80 healthcheck: test: - CMD-SHELL - curl -fs http://127.0.0.1:80/ || exit 1 interval: 15s timeout: 5s retries: 5 deploy: resources: limits: cpus: "0.25" memory: 128M reservations: cpus: "0.05" memory: 32M logging: *a1 http2: image: php:8.2-apache container_name: http2 restart: unless-stopped environment: - TZ=America/Los_Angeles volumes: - ./data:/var/www/html - ./data/ugh.html:/var/www/html/index.html - ./data/chat-proxy.conf:/etc/apache2/conf-enabled/chat-proxy.conf command: > bash -c "a2enmod proxy proxy_http proxy_wstunnel rewrite && apache2-foreground" ports: - 9798:80 healthcheck: test: - CMD-SHELL - curl -fs http://127.0.0.1:80/ || exit 1 interval: 15s timeout: 5s retries: 5 deploy: resources: limits: cpus: "0.25" memory: 128M reservations: cpus: "0.05" memory: 32M logging: *a1 chat-server: image: node:22-alpine working_dir: /app restart: unless-stopped environment: - CHAT_LOG_PATH=/app/messages.log volumes: - ./data:/app command: sh -c "npm install --omit=dev && node chat-server.js" healthcheck: test: - CMD-SHELL - curl -fs http://127.0.0.1:80/ || exit 1 interval: 15s timeout: 5s retries: 5 logging: driver: json-file options: max-size: 10m max-file: "3" deploy: resources: limits: cpus: "0.5" memory: 256M reservations: cpus: "0.1" memory: 64M networks: {}