forked from rarias/jungle
		
	Instead of using multiple tunels to forward all our services to the VM that serves jungle.bsc.es, just use nginx to redirect the traffic from hut. This allows adding custom rules for paths that are not posible otherwise. Reviewed-by: Aleix Boné <abonerib@bsc.es>
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { theFlake, pkgs, ... }:
 | |
| let
 | |
|   website = pkgs.stdenv.mkDerivation {
 | |
|     name = "jungle-web";
 | |
|     src = theFlake;
 | |
|     buildInputs = [ pkgs.hugo ];
 | |
|     buildPhase = ''
 | |
|       cd web
 | |
|       rm -rf public/
 | |
|       hugo
 | |
|     '';
 | |
|     installPhase = ''
 | |
|       cp -r public $out
 | |
|     '';
 | |
|   };
 | |
| in
 | |
| {
 | |
|   services.nginx = {
 | |
|     enable = true;
 | |
|     virtualHosts."jungle.bsc.es" = {
 | |
|       root = "${website}";
 | |
|       listen = [
 | |
|         {
 | |
|           addr = "127.0.0.1";
 | |
|           port = 80;
 | |
|         }
 | |
|       ];
 | |
|       extraConfig = ''
 | |
|         location /git {
 | |
|           rewrite ^/git$ / break;
 | |
|           rewrite ^/git/(.*) /$1 break;
 | |
|           proxy_pass http://127.0.0.1:3000;
 | |
|           proxy_redirect http:// $scheme://;
 | |
|         }
 | |
|         location /cache {
 | |
|           rewrite ^/cache(.*) /$1 break;
 | |
|           proxy_pass http://127.0.0.1:5000;
 | |
|           proxy_redirect http:// $scheme://;
 | |
|         }
 | |
|         location /lists {
 | |
|           proxy_pass http://127.0.0.1:8081;
 | |
|           proxy_redirect http:// $scheme://;
 | |
|         }
 | |
|         location /grafana {
 | |
|           proxy_pass http://127.0.0.1:2342;
 | |
|           proxy_redirect http:// $scheme://;
 | |
|           # Websockets
 | |
|           proxy_http_version 1.1;
 | |
|           proxy_set_header Upgrade $http_upgrade;
 | |
|           proxy_set_header Connection "upgrade";
 | |
|         }
 | |
|         location ~ ^/~(.+?)(/.*)?$ {
 | |
|           alias /ceph/home/$1/public_html$2;
 | |
|           index  index.html index.htm;
 | |
|           autoindex on;
 | |
|           absolute_redirect off;
 | |
|         }
 | |
|       '';
 | |
|     };
 | |
|   };
 | |
| }
 |