You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+34-16Lines changed: 34 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,23 +37,41 @@ Full list found in [requirements.txt](./requirements.txt).
37
37
38
38
## Security
39
39
40
-
Certificates used are located in the `./security/` folder, taken from the [Cogstack-NiFi](https://github.com/CogStack-NiFi) security folder, [root-ca.key](https://raw.githubusercontent.com/CogStack/CogStack-NiFi/refs/heads/main/security/root-ca.key) and [root-ca.pem](https://raw.githubusercontent.com/CogStack/CogStack-NiFi/refs/heads/main/security/root-capem), read the [security section](https://cogstack-nifi.readthedocs.io/en/latest/security.html) for more info on how to generate them from the main NiFi repository.
40
+
Certificates used are located in the `./security/` folder, taken from the [Cogstack-NiFi](https://github.com/CogStack-NiFi) security folder, [nifi.key](https://raw.githubusercontent.com/CogStack/CogStack-NiFi/refs/heads/main/security/certificates/nifi/nifi.key) and [nifi.pem](https://raw.githubusercontent.com/CogStack/CogStack-NiFi/refs/heads/main/security/certificates/nifi/nifi.pem), read the [security section](https://cogstack-nifi.readthedocs.io/en/latest/security.html) for more info on how to generate them from the main NiFi repository.
41
41
42
42
## Setting up your own hub
43
43
44
-
There are two docker compose files:
45
-
`docker-compose-dev.yml` - this will build the build the hub image from scratch, it will not build the singleuser one however.
46
-
`docker-compose.yml` - default, for production.
44
+
This folder contains a modular Docker Compose setup for running the CogStack Jupyter Hub across multiple environments.
45
+
46
+
```bash
47
+
docker/
48
+
├── docker-compose.base.yml # Canonical base definition
49
+
├── docker-compose.yml # Extends the base (always loaded)
50
+
├── docker-compose.override.yml # Local overrides (auto-loaded)
-**Local:**`make up` → uses base + override (bridge network)
60
+
-**Dev:**`make up-dev` → uses base + dev overrides
61
+
-**Prod:**`make up-prod` → uses base + prod overrides
62
+
-**Stop:**`make down`
63
+
-**Show envs:**`make show-env`
64
+
65
+
This structure keeps the base clean while allowing environment-specific overlays.
47
66
48
67
Check the [env/general.env](./env/general.env), set the `CPU_ARCHITECTURE` variable to whatever you need, the default for most Laptops/PCs is `amd64`, if you have an ARM laptop/device then set to `arm64`, that should suffice.
49
68
50
69
Execute the following in the main repo directory:
51
70
52
-
```bash
53
-
bash export_env_vars.sh
54
-
cd docker
55
-
docker compose up -d -f docker-compose.yml cogstack-jupyter-hub
56
-
```
71
+
```bash
72
+
cd docker
73
+
make start
74
+
```
57
75
58
76
Updating certificates and env settings from the main repo:
59
77
- sometimes it is necessary to grab new certificates if the old ones expired (from the main Cogstack-NiFi repo)
@@ -77,8 +95,8 @@ Pre-requisites (for Linux and Windows): - for Linux, you need to install the nvi
77
95
78
96
In [env/jupyter.env](./env/jupyter.env):
79
97
80
-
- change `DOCKER_ENABLE_GPU_SUPPORT` from `false` to `true`.
81
-
- change `DOCKER_NOTEBOOK_IMAGE` from `cogstacksystems/jupyter-singleuser:latest` to `cogstacksystems/jupyter-singleuser-gpu:latest`.
98
+
- change `JUPYTERHUB_DOCKER_ENABLE_GPU_SUPPORT` from `false` to `true`.
99
+
- change `JUPYTERHUB_JUPYTER_HUB_SINGLEUSER_DOCKER_NOTEBOOK_IMAGE` from `cogstacksystems/jupyter-singleuser:latest` to `cogstacksystems/jupyter-singleuser-gpu:latest`.
82
100
- in the main repo folder, execute the following command in terminal: `source env/jupyter.env`, then `docker compose up -d`.
83
101
84
102
*Use any release version you want instead of `latest` as necessary .
@@ -89,12 +107,12 @@ Users can have their resources limited (currently only CPU + RAM), there is a de
89
107
Change the coresponding variables in [env/jupyter.env](./env/jupyter.env):
90
108
91
109
* General user resource cap per container, default 2 cores, 2GB ram:
@@ -103,4 +121,4 @@ This feature is currently experiemntal, it requires admins to add users to the s
103
121
104
122
## DEVELOPING
105
123
106
-
Please make sure to set DOCKER_JUPYTER_HUB_CONTAINER_NAME="cogstack-jupyter-hub-dev" in the `env/jupyter.env` otherwise singleuser containers won't be able to start.
124
+
Please make sure to set JUPYTER_HUB_DOCKER_CONTAINER_NAME="cogstack-jupyter-hub-dev" in the `env/jupyter.env` otherwise singleuser containers won't be able to start.
0 commit comments