62 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nginx Configuration File
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nginx Configuration File
		
	
	
	
	
	
user  nginx;
 | 
						|
worker_processes  1;
 | 
						|
 | 
						|
error_log  /var/log/nginx/error.log debug;
 | 
						|
 | 
						|
events {
 | 
						|
    worker_connections  1024;
 | 
						|
}
 | 
						|
 | 
						|
http {
 | 
						|
  server {
 | 
						|
    listen 80;
 | 
						|
    
 | 
						|
    location / {
 | 
						|
      # React routes are entirely on the App side in the web broswer
 | 
						|
      # Always proxy to root with the same page request when nginx 404s
 | 
						|
      error_page 404 /;
 | 
						|
      proxy_intercept_errors on;
 | 
						|
      proxy_set_header Host $host;
 | 
						|
      proxy_pass http://librephotos-frontend:3000/;
 | 
						|
    }
 | 
						|
    location ~ ^/(api|media)/ {
 | 
						|
      proxy_set_header X-Forwarded-Proto $scheme;
 | 
						|
      proxy_set_header X-Real-IP $remote_addr;
 | 
						|
      proxy_set_header Host librephotos-backend;
 | 
						|
      include uwsgi_params;
 | 
						|
      proxy_pass http://librephotos-backend:8001;
 | 
						|
    }
 | 
						|
    # needed for webpack-dev-server
 | 
						|
    location /ws {
 | 
						|
      proxy_pass http://librephotos-frontend:3000;
 | 
						|
      proxy_http_version 1.1;
 | 
						|
      proxy_set_header Upgrade $http_upgrade;
 | 
						|
      proxy_set_header Connection "upgrade";
 | 
						|
    }
 | 
						|
    # Django media
 | 
						|
    location /protected_media  {
 | 
						|
        internal;
 | 
						|
        alias /protected_media/;      
 | 
						|
    }
 | 
						|
 | 
						|
    location /static/drf-yasg {
 | 
						|
        proxy_pass http://librephotos-backend:8001;  
 | 
						|
    }
 | 
						|
 | 
						|
    location /data  {
 | 
						|
        internal;
 | 
						|
        alias /data/;      
 | 
						|
    }
 | 
						|
 | 
						|
    # Original Photos
 | 
						|
    location /original  {
 | 
						|
        internal;
 | 
						|
        alias /data/;
 | 
						|
    }
 | 
						|
    # Nextcloud Original Photos
 | 
						|
    location /nextcloud_original  {
 | 
						|
        internal;
 | 
						|
        alias /data/nextcloud_media/;
 | 
						|
    }
 | 
						|
  }
 | 
						|
} |