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
+17-17Lines changed: 17 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -57,7 +57,7 @@ The workspace requires **Docker** to be installed on your machine ([📖 Install
57
57
Deploying a single workspace instance is as simple as:
58
58
59
59
```bash
60
-
docker run -p 8080:8080 mltooling/ml-workspace:0.10.4
60
+
docker run -p 8080:8080 mltooling/ml-workspace:0.11.0
61
61
```
62
62
63
63
Voilà, that was easy! Now, Docker will pull the latest workspace image to your machine. This may take a few minutes, depending on your internet speed. Once the workspace is started, you can access it via http://localhost:8080.
@@ -74,7 +74,7 @@ docker run -d \
74
74
--env AUTHENTICATE_VIA_JUPYTER="mytoken" \
75
75
--shm-size 512m \
76
76
--restart always \
77
-
mltooling/ml-workspace:0.10.4
77
+
mltooling/ml-workspace:0.11.0
78
78
```
79
79
80
80
This command runs the container in background (`-d`), mounts your current working directory into the `/workspace` folder (`-v`), secures the workspace via a provided token (`--env AUTHENTICATE_VIA_JUPYTER`), provides 512MB of shared memory (`--shm-size`) to prevent unexpected crashes (see [known issues section](#known-issues)), and keeps the container running even on system restarts (`--restart always`). You can find additional options for docker run [here](https://docs.docker.com/engine/reference/commandline/run/) and workspace configuration options in [the section below](#Configuration).
@@ -181,7 +181,7 @@ We strongly recommend enabling authentication via one of the following two optio
181
181
Activate the token-based authentication based on the authentication implementation of Jupyter via the `AUTHENTICATE_VIA_JUPYTER` variable:
182
182
183
183
```bash
184
-
docker run -p 8080:8080 --env AUTHENTICATE_VIA_JUPYTER="mytoken" mltooling/ml-workspace:0.10.4
184
+
docker run -p 8080:8080 --env AUTHENTICATE_VIA_JUPYTER="mytoken" mltooling/ml-workspace:0.11.0
185
185
```
186
186
187
187
You can also use `<generated>` to let Jupyter generate a random token that is printed out on the container logs. A value of `true` will not set any token but activate that every request to any tool in the workspace will be checked with the Jupyter instance if the user is authenticated. This is used for tools like JupyterHub, which configures its own way of authentication.
@@ -191,7 +191,7 @@ You can also use `<generated>` to let Jupyter generate a random token that is pr
191
191
Activate the basic authentication via the `WORKSPACE_AUTH_USER` and `WORKSPACE_AUTH_PASSWORD` variable:
192
192
193
193
```bash
194
-
docker run -p 8080:8080 --env WORKSPACE_AUTH_USER="user" --env WORKSPACE_AUTH_PASSWORD="pwd" mltooling/ml-workspace:0.10.4
194
+
docker run -p 8080:8080 --env WORKSPACE_AUTH_USER="user" --env WORKSPACE_AUTH_PASSWORD="pwd" mltooling/ml-workspace:0.11.0
195
195
```
196
196
197
197
The basic authentication is configured via the nginx proxy and might be more performant compared to the other option since with `AUTHENTICATE_VIA_JUPYTER` every request to any tool in the workspace will check via the Jupyter instance if the user (based on the request cookies) is authenticated.
If you want to host the workspace on a public domain, we recommend to use [Let's encrypt](https://letsencrypt.org/getting-started/) to get a trusted certificate for your domain. To use the generated certificate (e.g., via [certbot](https://certbot.eff.org/) tool) for the workspace, the `privkey.pem` corresponds to the `cert.key` file and the `fullchain.pem` to the `cert.crt` file.
@@ -233,7 +233,7 @@ By default, the workspace container has no resource constraints and can use as m
233
233
For example, the following command restricts the workspace to only use a maximum of 8 CPUs, 16 GB of memory, and 1 GB of shared memory (see [Known Issues](#known-issues)):
234
234
235
235
```bash
236
-
docker run -p 8080:8080 --cpus=8 --memory=16g --shm-size=1G mltooling/ml-workspace:0.10.4
236
+
docker run -p 8080:8080 --cpus=8 --memory=16g --shm-size=1G mltooling/ml-workspace:0.11.0
237
237
```
238
238
239
239
> 📖 _For more options and documentation on resource constraints, please refer to the [official docker guide](https://docs.docker.com/config/containers/resource_constraints/)._
@@ -262,7 +262,7 @@ In addition to the main workspace image (`mltooling/ml-workspace`), we provide o
262
262
The minimal flavor (`mltooling/ml-workspace-minimal`) is our smallest image that contains most of the tools and features described in the [features section](#features) without most of the python libraries that are pre-installed in our main image. Any Python library or excluded tool can be installed manually during runtime by the user.
263
263
264
264
```bash
265
-
docker run -p 8080:8080 mltooling/ml-workspace-minimal:0.10.4
265
+
docker run -p 8080:8080 mltooling/ml-workspace-minimal:0.11.0
266
266
```
267
267
</details>
268
268
@@ -280,7 +280,7 @@ docker run -p 8080:8080 mltooling/ml-workspace-minimal:0.10.4
280
280
The R flavor (`mltooling/ml-workspace-r`) is based on our default workspace image and extends it with the R-interpreter, R-Jupyter kernel, RStudio server (access via `Open Tool -> RStudio`), and a variety of popular packages from the R ecosystem.
281
281
282
282
```bash
283
-
docker run -p 8080:8080 mltooling/ml-workspace-r:0.10.4
283
+
docker run -p 8080:8080 mltooling/ml-workspace-r:0.11.0
284
284
```
285
285
</details>
286
286
@@ -298,7 +298,7 @@ docker run -p 8080:8080 mltooling/ml-workspace-r:0.10.4
298
298
The Spark flavor (`mltooling/ml-workspace-spark`) is based on our R-flavor workspace image and extends it with the Spark-interpreter, Spark-Jupyter kernel (Apache Toree), Zeppelin Notebook (access via `Open Tool -> Zeppelin`), and a few additional python libraries & Jupyter extensions.
299
299
300
300
```bash
301
-
docker run -p 8080:8080 mltooling/ml-workspace-spark:0.10.4
301
+
docker run -p 8080:8080 mltooling/ml-workspace-spark:0.11.0
302
302
```
303
303
304
304
</details>
@@ -322,13 +322,13 @@ The GPU flavor (`mltooling/ml-workspace-gpu`) is based on our default workspace
docker run -p 8080:8080 --runtime nvidia --env NVIDIA_VISIBLE_DEVICES="all" mltooling/ml-workspace-gpu:0.10.4
331
+
docker run -p 8080:8080 --runtime nvidia --env NVIDIA_VISIBLE_DEVICES="all" mltooling/ml-workspace-gpu:0.11.0
332
332
```
333
333
334
334
The GPU flavor also comes with a few additional configuration options, as explained below:
@@ -367,7 +367,7 @@ The workspace is designed as a single-user development environment. For a multi-
367
367
ML Hub makes it easy to set up a multi-user environment on a single server (via Docker) or a cluster (via Kubernetes) and supports a variety of usage scenarios & authentication providers. You can try out ML Hub via:
368
368
369
369
```bash
370
-
docker run -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock mltooling/ml-hub:0.10.4
370
+
docker run -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock mltooling/ml-hub:0.11.0
371
371
```
372
372
373
373
For more information and documentation about ML Hub, please take a look at the [Github Site](https://github.com/ml-tooling/ml-hub).
@@ -726,7 +726,7 @@ To run Python code as a job, you need to provide a path or URL to a code directo
726
726
You can execute code directly from Git, Mercurial, Subversion, or Bazaar by using the pip-vcs format as described in [this guide](https://pip.pypa.io/en/stable/reference/pip_install/#vcs-support). For example, to execute code from a [subdirectory](https://github.com/ml-tooling/ml-workspace/tree/main/resources/tests/ml-job) of a git repository, just run:
727
727
728
728
```bash
729
-
docker run --env EXECUTE_CODE="git+https://github.com/ml-tooling/ml-workspace.git#subdirectory=resources/tests/ml-job" mltooling/ml-workspace:0.10.4
729
+
docker run --env EXECUTE_CODE="git+https://github.com/ml-tooling/ml-workspace.git#subdirectory=resources/tests/ml-job" mltooling/ml-workspace:0.11.0
730
730
```
731
731
732
732
> 📖 _For additional information on how to specify branches, commits, or tags please refer to [this guide](https://pip.pypa.io/en/stable/reference/pip_install/#vcs-support)._
@@ -736,7 +736,7 @@ docker run --env EXECUTE_CODE="git+https://github.com/ml-tooling/ml-workspace.gi
736
736
In the following example, we mount and execute the current working directory (expected to contain our code) into the `/workspace/ml-job/` directory of the workspace:
737
737
738
738
```bash
739
-
docker run -v "${PWD}:/workspace/ml-job/" --env EXECUTE_CODE="/workspace/ml-job/" mltooling/ml-workspace:0.10.4
739
+
docker run -v "${PWD}:/workspace/ml-job/" --env EXECUTE_CODE="/workspace/ml-job/" mltooling/ml-workspace:0.11.0
It is also possible to embed your code directly into a custom job image, as shown below:
763
763
764
764
```dockerfile
765
-
FROM mltooling/ml-workspace:0.10.4
765
+
FROM mltooling/ml-workspace:0.11.0
766
766
767
767
# Add job code to image
768
768
COPY ml-job /workspace/ml-job
@@ -827,7 +827,7 @@ The workspace can be extended in many ways at runtime, as explained [here](#exte
827
827
828
828
```dockerfile
829
829
# Extend from any of the workspace versions/flavors
830
-
FROM mltooling/ml-workspace:0.10.4
830
+
FROM mltooling/ml-workspace:0.11.0
831
831
832
832
# Run you customizations, e.g.
833
833
RUN \
@@ -1075,7 +1075,7 @@ import sys
1075
1075
Certain desktop tools (e.g., recent versions of [Firefox](https://github.com/jlesage/docker-firefox#increasing-shared-memory-size)) or libraries (e.g., Pytorch - see Issues: [1](https://github.com/pytorch/pytorch/issues/2244), [2](https://github.com/pytorch/pytorch/issues/1355)) might crash if the shared memory size (`/dev/shm`) is too small. The default shared memory size of Docker is 64MB, which might not be enough for a few tools. You can provide a higher shared memory size via the `shm-size` docker run option:
1076
1076
1077
1077
```bash
1078
-
docker run --shm-size=2G mltooling/ml-workspace:0.10.4
1078
+
docker run --shm-size=2G mltooling/ml-workspace:0.11.0
0 commit comments