events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; error_log /var/log/nginx/error.log; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # Rate limiting (disabled for testing) # limit_req_zone $binary_remote_addr zone=api:10m rate=100r/s; # limit_req_zone $binary_remote_addr zone=auth:10m rate=50r/s; # Upstream services upstream auth_service { server auth-service:3001; } upstream api_service { server api-service:3000; } upstream storage_service { server storage:9000; } upstream realtime_service { server realtime-service:3002; keepalive 64; } # Load site-specific configurations include /etc/nginx/conf.d/*.conf; }