Add Traefik doc (#2805)
	
		
	
				
					
				
			
							parent
							
								
									1fd1f1d8fc
								
							
						
					
					
						commit
						bc545f110e
					
				@ -0,0 +1,86 @@ | 
				
			||||
Deploy Traefik configuration | 
				
			||||
========================== | 
				
			||||
 | 
				
			||||
FastCGI server | 
				
			||||
-------------- | 
				
			||||
 | 
				
			||||
For now, Traefik does not support FastCGI, so it can't be used with the | 
				
			||||
default provided llng-fastcgi-server. It can work with the PSGI server, | 
				
			||||
if it exposes an HTTP socket. See :doc:Advanced PSGI usage<psgi>. | 
				
			||||
 | 
				
			||||
For example, to use the Traefik handler with uWSGI, exposing an HTTP socket | 
				
			||||
binding on 127.0.0.1:8183 | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   cd /usr/share/lemonldap-ng/llng-server SOURCE_SERVER=traefik /sbin/uwsgi \ | 
				
			||||
     --plugin psgi \ | 
				
			||||
     --psgi llng-server.psgi \ | 
				
			||||
     --master \ | 
				
			||||
     --workers 2 \ | 
				
			||||
     --max-worker-lifetime 86400 \ | 
				
			||||
     --max-requests 10000 \ | 
				
			||||
     --disable-logging \ | 
				
			||||
     --harakiri 30 \ | 
				
			||||
     --buffer-size 65535 \ | 
				
			||||
     --limit-post 0 \ | 
				
			||||
     --die-on-term \ | 
				
			||||
     --http-socket 127.0.0.1:8183 | 
				
			||||
 | 
				
			||||
Note : you can create a systemd unit, but as Traefik is mainly used in a | 
				
			||||
containers context, you can use a command similar to the previous one as | 
				
			||||
an entrypoint. | 
				
			||||
 | 
				
			||||
Then, to configure Traefik's middleware to use it, you can use this | 
				
			||||
configuration fragment: | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   http: | 
				
			||||
     middlewares: | 
				
			||||
       lemonldap: | 
				
			||||
         forwardAuth: | 
				
			||||
           address: http://127.0.0.1:8183 | 
				
			||||
           authResponseHeadersRegex: '^.*$' | 
				
			||||
 | 
				
			||||
Then to protect an app with Lemonldap::NG: | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   tags = [ | 
				
			||||
     "traefik.enable=true", | 
				
			||||
     "traefik.http.routers.whoami.rule=Path(`/whoami`)", | 
				
			||||
     "traefik.http.routers.whoami.entrypoints=https", | 
				
			||||
     "traefik.http.routers.whoami.middlewares=lemonldap@file" | 
				
			||||
   ] | 
				
			||||
 | 
				
			||||
Install LLNG FastCGI server | 
				
			||||
--------------------------- | 
				
			||||
 | 
				
			||||
Debian/Ubuntu | 
				
			||||
~~~~~~~~~~~~~ | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   apt install lemonldap-ng-fastcgi-server | 
				
			||||
 | 
				
			||||
Enable and start the service : | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   systemctl enable llng-fastcgi-server | 
				
			||||
   systemctl start llng-fastcgi-server | 
				
			||||
 | 
				
			||||
Red Hat/CentOS | 
				
			||||
~~~~~~~~~~~~~~ | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   yum install lemonldap-ng-nginx lemonldap-ng-fastcgi-server | 
				
			||||
 | 
				
			||||
Enable and start the service : | 
				
			||||
 | 
				
			||||
:: | 
				
			||||
 | 
				
			||||
   systemctl enable llng-fastcgi-server | 
				
			||||
   systemctl start llng-fastcgi-server | 
				
			||||
					Loading…
					
					
				
		Reference in new issue