... | ... | @@ -245,14 +245,15 @@ As aid before when we create a new image we always tag it with todays date when |
|
|
### Jupyterhub
|
|
|
I will not go through the code in detail as it is pretty well described in the [code](https://git.cs.kau.se/jonakarl/jupyterhub/-/blob/master/jupyterhub_config.py) I will however do some high level overview of our design.
|
|
|
In overview the design looks like this:
|
|
|
- install.sh-->network-keeper
|
|
|
- network-keeper-->create network
|
|
|
- network-keeper-->pulls current image;
|
|
|
- install.sh-->"pre-populate" docker-compose from .env file
|
|
|
- install.sh-->Start jupyterhub from docker-compose.yml
|
|
|
- docker-compose.yml-->Set environment variables for juptyerhub_config.py
|
|
|
- jupyterhub_config.py reads enviroment variabels and configure jupyterhub
|
|
|
|
|
|
```mermaid
|
|
|
graph TD;
|
|
|
A{install.sh} -->|Create Service| B{network-keeper};
|
|
|
B --> C[pull current image];
|
|
|
B --> D[create network];
|
|
|
A -->|"pre-populate" docker-compose from .env file| E[docker-compose.yml];
|
|
|
E --> |Set environment variables| F[jupyterhub_config.py];
|
|
|
F --> |Read environment variables| G[Jupyterhub];
|
|
|
```
|
|
|
|
|
|
The network-keeper service and pre-populating the docker-compose file (and why it is needed) we have described before.
|
|
|
|
... | ... | @@ -282,5 +283,3 @@ I will try to describe what happens when a user logs in and what we do. |
|
|
*Defualt the gpu image is the same as the normal image
|
|
|
|
|
|
**The folders are created inside the jupyterhub container but is bind mounted from the manager host (all folders on the server have the same user and we use docker mounts to seperate user homefolders) |
|
|
|
|
|
|