user nginx; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; worker_processes auto; # worker_rlimit_nofile 33282; # sendfile_max_chunk 512k; 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"'; map $http_upgrade $connection_upgrade { default "upgrade"; } server { listen 10000 default_server; server_name _; # security headers add_header X-Frame-Options SAMEORIGIN always; # proxy headers proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # budibase services # set $app_service http://{{ address }}:4001; # set $worker_service http://{{ address }}:4002; # set $builder http://{{ address }}:3000; # set $minio http://minio-service:9000; # set $couchdb http://couchdb-service:5984; # config options client_header_timeout 60; client_body_timeout 60; keepalive_timeout 60; gzip off; gzip_comp_level 4; location = / { return 301 /builder/; } location /db/ { proxy_pass http://couchdb-service:5984; rewrite ^/db/(.*)$ /$1 break; } location ~ ^/api/(system|admin|global)/ { proxy_pass http://{{ address }}:4002; } location /api/ { proxy_read_timeout 120s; proxy_connect_timeout 120s; proxy_send_timeout 120s; proxy_pass http://{{ address }}:4001; } location /app_ { proxy_pass http://{{ address }}:4001; } location /app/ { proxy_pass http://{{ address }}:4001; rewrite ^/app/(.*)$ $1 break; } location /builder { proxy_pass http://{{ address }}:3000; rewrite ^/builder(.*)$ /builder/$1 break; } location /builder/ { proxy_pass http://{{ address }}:3000; } location / { proxy_pass http://minio-service:9000; } } }