nginx.conf 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. events {}
  2. http {
  3. server {
  4. listen 80;
  5. server_name localhost;
  6. # Allow uploads up to 100 MB
  7. client_max_body_size 100m;
  8. location / {
  9. proxy_pass http://ui:5173;
  10. proxy_set_header Host $host;
  11. proxy_set_header X-Real-IP $remote_addr;
  12. proxy_http_version 1.1;
  13. proxy_set_header Upgrade $http_upgrade;
  14. proxy_set_header Connection "upgrade";
  15. }
  16. location /ws {
  17. proxy_pass http://ui:5173;
  18. proxy_set_header Host $host;
  19. proxy_set_header X-Real-IP $remote_addr;
  20. proxy_set_header Upgrade $http_upgrade;
  21. proxy_set_header Connection "upgrade";
  22. }
  23. location /socket.io/ {
  24. proxy_http_version 1.1;
  25. proxy_set_header Upgrade $http_upgrade;
  26. proxy_set_header Connection "upgrade";
  27. proxy_pass http://socket:8084/socket.io/;
  28. }
  29. # Serve uploaded media files directly from the shared volume
  30. location /media/ {
  31. alias /media/;
  32. add_header Cache-Control "public, max-age=31536000, immutable";
  33. try_files $uri =404;
  34. }
  35. location /api/ {
  36. rewrite ^/api/(.*) /$1 break;
  37. proxy_pass http://gateway:8084;
  38. proxy_set_header Host $host;
  39. proxy_set_header X-Real-IP $remote_addr;
  40. }
  41. location /feeds/ {
  42. rewrite ^/feeds/(.*) /$1 break;
  43. proxy_pass http://feed-aggregator:3010;
  44. proxy_set_header Host $host;
  45. proxy_set_header X-Real-IP $remote_addr;
  46. }
  47. location /scheduler/ {
  48. rewrite ^/scheduler/(.*) /$1 break;
  49. proxy_pass http://scheduler:3011;
  50. proxy_set_header Host $host;
  51. proxy_set_header X-Real-IP $remote_addr;
  52. }
  53. }
  54. }