server { # Listen for connection on (internal) port 80 listen 80; location / { # Change 'inventree-server' to the name of the inventree server container, # and '8000' to the INVENTREE_WEB_PORT (if not default) proxy_pass http://inventree-server:8000; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; client_max_body_size 100M; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_buffering off; proxy_request_buffering off; } # Redirect any requests for static files location /static/ { alias /var/www/static/; autoindex on; # Caching settings expires 30d; add_header Pragma public; add_header Cache-Control "public"; } # Redirect any requests for media files location /media/ { alias /var/www/media/; # Media files require user authentication auth_request /auth; } # Use the 'user' API endpoint for auth location /auth { internal; proxy_pass http://inventree-server:8000/auth/; proxy_pass_request_body off; proxy_set_header Content-Length ""; proxy_set_header X-Original-URI $request_uri; } }