mirror of
				https://gitea.publichub.eu/oscar.krause/fastapi-dls.git
				synced 2025-11-04 03:16:07 +00:00 
			
		
		
		
	Merge branch 'dev' into ha
# Conflicts: # README.md
This commit is contained in:
		
							
								
								
									
										40
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								README.md
									
									
									
									
									
								
							@@ -49,6 +49,8 @@ Docker-Images are available here:
 | 
				
			|||||||
- [Docker-Hub](https://hub.docker.com/repository/docker/collinwebdesigns/fastapi-dls): `collinwebdesigns/fastapi-dls:latest`
 | 
					- [Docker-Hub](https://hub.docker.com/repository/docker/collinwebdesigns/fastapi-dls): `collinwebdesigns/fastapi-dls:latest`
 | 
				
			||||||
- [GitLab-Registry](https://git.collinwebdesigns.de/oscar.krause/fastapi-dls/container_registry): `registry.git.collinwebdesigns.de/oscar.krause/fastapi-dls/main:latest`
 | 
					- [GitLab-Registry](https://git.collinwebdesigns.de/oscar.krause/fastapi-dls/container_registry): `registry.git.collinwebdesigns.de/oscar.krause/fastapi-dls/main:latest`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The images include database drivers for `postgres`, `mysql`, `mariadb` and `sqlite`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**Run this on the Docker-Host**
 | 
					**Run this on the Docker-Host**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```shell
 | 
					```shell
 | 
				
			||||||
@@ -378,23 +380,21 @@ After first success you have to replace `--issue` with `--renew`.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Configuration
 | 
					# Configuration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| Variable               | Default                                | Usage                                                                                                              |
 | 
					| Variable               | Default                                | Usage                                                                                                |
 | 
				
			||||||
|------------------------|----------------------------------------|--------------------------------------------------------------------------------------------------------------------|
 | 
					|------------------------|----------------------------------------|------------------------------------------------------------------------------------------------------|
 | 
				
			||||||
| `DEBUG`                | `false`                                | Toggles `fastapi` debug mode                                                                                       |
 | 
					| `DEBUG`                | `false`                                | Toggles `fastapi` debug mode                                                                         |
 | 
				
			||||||
| `DLS_URL`              | `localhost`                            | Used in client-token to tell guest driver where dls instance is reachable                                          |
 | 
					| `DLS_URL`              | `localhost`                            | Used in client-token to tell guest driver where dls instance is reachable                            |
 | 
				
			||||||
| `DLS_PORT`             | `443`                                  | Used in client-token to tell guest driver where dls instance is reachable                                          |
 | 
					| `DLS_PORT`             | `443`                                  | Used in client-token to tell guest driver where dls instance is reachable                            |
 | 
				
			||||||
| `HA_REPLICATE`         |                                        | `DLS_URL` + `DLS_PORT` of primary DLS instance, e.g. `dls-node:443` (for HA only **two** nodes are supported!) \*1 |
 | 
					| `TOKEN_EXPIRE_DAYS`    | `1`                                    | Client auth-token validity (used for authenticate client against api, **not `.tok` file!**)          |
 | 
				
			||||||
| `HA_ROLE`              |                                        | `PRIMARY` or `SECONDARY`                                                                                           |
 | 
					| `LEASE_EXPIRE_DAYS`    | `90`                                   | Lease time in days                                                                                   |
 | 
				
			||||||
| `TOKEN_EXPIRE_DAYS`    | `1`                                    | Client auth-token validity (used for authenticate client against api, **not `.tok` file!**)                        |
 | 
					| `LEASE_RENEWAL_PERIOD` | `0.15`                                 | The percentage of the lease period that must elapse before a licensed client can renew a license \*1 |
 | 
				
			||||||
| `LEASE_EXPIRE_DAYS`    | `90`                                   | Lease time in days                                                                                                 |
 | 
					| `DATABASE`             | `sqlite:///db.sqlite`                  | See [official SQLAlchemy docs](https://docs.sqlalchemy.org/en/14/core/engines.html)                  |
 | 
				
			||||||
| `LEASE_RENEWAL_PERIOD` | `0.15`                                 | The percentage of the lease period that must elapse before a licensed client can renew a license \*2               |
 | 
					| `CORS_ORIGINS`         | `https://{DLS_URL}`                    | Sets `Access-Control-Allow-Origin` header (comma separated string) \*2                               |
 | 
				
			||||||
| `DATABASE`             | `sqlite:///db.sqlite`                  | See [official SQLAlchemy docs](https://docs.sqlalchemy.org/en/14/core/engines.html) \*3                            |
 | 
					| `SITE_KEY_XID`         | `00000000-0000-0000-0000-000000000000` | Site identification uuid                                                                             |
 | 
				
			||||||
| `CORS_ORIGINS`         | `https://{DLS_URL}`                    | Sets `Access-Control-Allow-Origin` header (comma separated string) \*4                                             |
 | 
					| `INSTANCE_REF`         | `10000000-0000-0000-0000-000000000001` | Instance identification uuid                                                                         |
 | 
				
			||||||
| `SITE_KEY_XID`         | `00000000-0000-0000-0000-000000000000` | Site identification uuid                                                                                           |
 | 
					| `ALLOTMENT_REF`        | `20000000-0000-0000-0000-000000000001` | Allotment identification uuid                                                                        |
 | 
				
			||||||
| `INSTANCE_REF`         | `10000000-0000-0000-0000-000000000001` | Instance identification uuid                                                                                       |
 | 
					| `INSTANCE_KEY_RSA`     | `<app-dir>/cert/instance.private.pem`  | Site-wide private RSA key for singing JWTs \*3                                                       |
 | 
				
			||||||
| `ALLOTMENT_REF`        | `20000000-0000-0000-0000-000000000001` | Allotment identification uuid                                                                                      |
 | 
					| `INSTANCE_KEY_PUB`     | `<app-dir>/cert/instance.public.pem`   | Site-wide public key \*3                                                                             |
 | 
				
			||||||
| `INSTANCE_KEY_RSA`     | `<app-dir>/cert/instance.private.pem`  | Site-wide private RSA key for singing JWTs \*5                                                                     |
 | 
					 | 
				
			||||||
| `INSTANCE_KEY_PUB`     | `<app-dir>/cert/instance.public.pem`   | Site-wide public key \*5                                                                                           |
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
\*1 If you want to use HA, this value should be point to `secondary` on `primary` and `primary` on `secondary`. Don't
 | 
					\*1 If you want to use HA, this value should be point to `secondary` on `primary` and `primary` on `secondary`. Don't
 | 
				
			||||||
use same database for both instances!
 | 
					use same database for both instances!
 | 
				
			||||||
@@ -403,11 +403,9 @@ use same database for both instances!
 | 
				
			|||||||
every 4.8 hours. If network connectivity is lost, the loss of connectivity is detected during license renewal and the
 | 
					every 4.8 hours. If network connectivity is lost, the loss of connectivity is detected during license renewal and the
 | 
				
			||||||
client has 19.2 hours in which to re-establish connectivity before its license expires.
 | 
					client has 19.2 hours in which to re-establish connectivity before its license expires.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
\*3 Other databases than sqlite are only supported outside of Docker (because of missing drivers)
 | 
					\*3 Always use `https`, since guest-drivers only support secure connections!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
\*4 Always use `https`, since guest-drivers only support secure connections!
 | 
					\*4 If you recreate instance keys you need to **recreate client-token for each guest**!
 | 
				
			||||||
 | 
					 | 
				
			||||||
\*5 If you recreate instance keys you need to **recreate client-token for each guest**!
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Setup (Client)
 | 
					# Setup (Client)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user