From 85ad9812ad15d584afc902b1258cca6b58fe6b76 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Tue, 23 Jun 2026 18:59:43 +0000
Subject: [PATCH] =?UTF-8?q?=F0=9F=94=BC=20Bump=20ghcr.io/kloudkit/workspac?=
=?UTF-8?q?e=20Docker=20tag=20to=20v0.4.0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.vitepress/theme/components/DockerIcon.vue | 2 +-
.vitepress/theme/components/Home.vue | 2 +-
README.md | 4 ++--
docs/editor/authentication.md | 6 +++---
docs/editor/extensions.md | 6 +++---
docs/editor/features.md | 6 +++---
docs/editor/metrics.md | 4 ++--
docs/editor/port-forwarding.md | 4 ++--
docs/editor/settings.md | 8 ++++----
docs/editor/storage.md | 4 ++--
docs/editor/terminal.md | 6 +++---
docs/editor/theme-and-fonts.md | 2 +-
docs/pages/getting-started.md | 6 +++---
docs/settings/configuration.md | 4 ++--
docs/settings/secrets.md | 2 +-
docs/settings/tls.md | 16 ++++++++--------
docs/settings/vault.md | 2 +-
docs/tools/apt.md | 10 +++++-----
docs/tools/cloudflared.md | 4 ++--
docs/tools/cpp.md | 4 ++--
docs/tools/docker.md | 16 ++++++++--------
docs/tools/dotnet.md | 4 ++--
docs/tools/helm.md | 2 +-
docs/tools/image-extras.md | 2 +-
docs/tools/python.md | 2 +-
docs/tools/rust.md | 2 +-
26 files changed, 65 insertions(+), 65 deletions(-)
diff --git a/.vitepress/theme/components/DockerIcon.vue b/.vitepress/theme/components/DockerIcon.vue
index 5e9b40c..36abe59 100644
--- a/.vitepress/theme/components/DockerIcon.vue
+++ b/.vitepress/theme/components/DockerIcon.vue
@@ -1,7 +1,7 @@
diff --git a/.vitepress/theme/components/Home.vue b/.vitepress/theme/components/Home.vue
index 5a61243..94cd462 100644
--- a/.vitepress/theme/components/Home.vue
+++ b/.vitepress/theme/components/Home.vue
@@ -5,7 +5,7 @@
sh
# TL-DR; ⚡ Power your batteries now!
-docker pull ghcr.io/kloudkit/workspace:v0.3.0
+docker pull ghcr.io/kloudkit/workspace:v0.4.0
diff --git a/README.md b/README.md
index e5336fa..4d91ac7 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
> 📚 Dedicated documentation for the **Kloud Workspace**
[](https://github.com/kloudkit/ws-meta/stargazers)
-[](https://github.com/orgs/kloudkit/packages/container/package/workspace)
+[](https://github.com/orgs/kloudkit/packages/container/package/workspace)
[](https://ws.kloudkit.com)
[](https://github.com/kloudkit/ws-docs/blob/main/LICENSE)
@@ -11,7 +11,7 @@
```sh
# TL-DR; ⚡ Power your batteries now!
-docker run -p 8080:8080 ghcr.io/kloudkit/workspace:v0.3.0
+docker run -p 8080:8080 ghcr.io/kloudkit/workspace:v0.4.0
```
## Documentation
diff --git a/docs/editor/authentication.md b/docs/editor/authentication.md
index b73bccc..73534e8 100644
--- a/docs/editor/authentication.md
+++ b/docs/editor/authentication.md
@@ -41,7 +41,7 @@ application running inside the workspace.
```sh{2}
docker run \
-e WS_AUTH_PASSWORD=super_duper_secret \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Creating a Hashed Password
@@ -70,7 +70,7 @@ Then deploy the workspace:
```sh{2}
docker run \
-e WS_AUTH_PASSWORD_HASHED="$argon2id$v=19$m=4096,t=3,p=1$z4DjJlJgI6S7fAdQC35ZQw$Rpu8CLMWedxJaH0eiFCetyoRbg+S8ow/RRyVCZzM6QE" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### File-Based Passwords
@@ -84,7 +84,7 @@ convention path and leave the variable unset.
docker run \
-e WS_AUTH_PASSWORD_HASHED=file:/run/secrets/workspace/auth/password_hashed \
-v ./password_hashed.txt:/run/secrets/workspace/auth/password_hashed:ro \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
See [Resolving Secret Values](/settings/configuration#resolving-secret-values)
diff --git a/docs/editor/extensions.md b/docs/editor/extensions.md
index c68b959..039d710 100644
--- a/docs/editor/extensions.md
+++ b/docs/editor/extensions.md
@@ -46,7 +46,7 @@ You can also install additional extensions by marketplace ID:
```sh{2}
docker run \
-e WS_EDITOR_ADDITIONAL_VS_EXTENSIONS="dbaeumer.vscode-eslint esbenp.prettier-vscode" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Persistent Extensions
@@ -69,7 +69,7 @@ docker volume create my-extensions
docker run \
-v my-extensions:/extensions \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Privately Hosted Gallery
@@ -82,7 +82,7 @@ For example:
```sh{2}
docker run \
-e EXTENSIONS_GALLERY='{"serviceUrl": "https://my-extensions/api"}' \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
::: warning
diff --git a/docs/editor/features.md b/docs/editor/features.md
index 027b39d..6d83d58 100644
--- a/docs/editor/features.md
+++ b/docs/editor/features.md
@@ -30,7 +30,7 @@ startup to determine which *features* to install automatically.
```sh{2}
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="dotnet jupyter" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Manual Installation
@@ -93,7 +93,7 @@ variable, set to one or more `skip_=true` pairs joined with `;`:
docker run \
-e WS_FEATURES_BUN_OPTS="skip_extensions=true;skip_completion=true" \
-e WS_FEATURES_ADDITIONAL_FEATURES="bun" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
::: warning
@@ -190,7 +190,7 @@ docker run \
-e WS_APT_DISABLE_REPOS="*" \
-e WS_FEATURES_STORE_URL="http://feature-store.local" \
-e WS_FEATURES_ADDITIONAL_FEATURES="gh terraform" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
The feature store image is available at `ghcr.io/kloudkit/ws-feature-store`.
diff --git a/docs/editor/metrics.md b/docs/editor/metrics.md
index 57ff5ba..f25192e 100644
--- a/docs/editor/metrics.md
+++ b/docs/editor/metrics.md
@@ -22,7 +22,7 @@ Set `WS_METRICS_ENABLE` to `true` when launching the container:
```sh{2}
docker run \
-e WS_METRICS_ENABLE=true \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
Once enabled, the exporter serves metrics at `/` on port **9100** *(default)*.
@@ -42,7 +42,7 @@ docker run \
-e WS_METRICS_ENABLE=true \
-e WS_METRICS_PORT=9200 \
-e WS_METRICS_COLLECTORS="container.cpu,container.memory" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Collectors
diff --git a/docs/editor/port-forwarding.md b/docs/editor/port-forwarding.md
index 827f13b..f6a80d2 100644
--- a/docs/editor/port-forwarding.md
+++ b/docs/editor/port-forwarding.md
@@ -58,7 +58,7 @@ environment variable:
```sh{2}
docker run \
-e WS_SERVER_PROXY_DOMAIN=ws.dev \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
In the configuration above, if your Kloud Workspace is hosted at `ws.dev` and you run the
@@ -72,7 +72,7 @@ You can provide multiple proxy domains by passing a space-delimited list:
```sh{2}
docker run \
-e WS_SERVER_PROXY_DOMAIN="ws.dev local.ws.dev" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
With the configuration above, services will be available on both domains: `*.ws.dev` and
diff --git a/docs/editor/settings.md b/docs/editor/settings.md
index 09b06a6..ad955ec 100644
--- a/docs/editor/settings.md
+++ b/docs/editor/settings.md
@@ -86,14 +86,14 @@ preserving any defaults not explicitly specified:
```sh{2} [inline]
docker run \
-e WS_EDITOR_SETTINGS_MERGE='{"editor.fontSize": 16, "[python]": {"editor.tabSize": 4}}' \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2,3} [file]
docker run \
-e WS_EDITOR_SETTINGS_MERGE_FILE=/workspace/.settings-merge.json \
-v /path/to/my-settings.json:/workspace/.settings-merge.json \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
@@ -111,14 +111,14 @@ Using override removes all default workspace settings.
```sh{2} [inline]
docker run \
-e WS_EDITOR_SETTINGS_OVERRIDE='{"editor.fontSize": 16}' \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2,3} [file]
docker run \
-e WS_EDITOR_SETTINGS_OVERRIDE_FILE=/workspace/.settings.json \
-v /path/to/my-settings.json:/workspace/.settings.json \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
diff --git a/docs/editor/storage.md b/docs/editor/storage.md
index 0d840b6..eb064a8 100644
--- a/docs/editor/storage.md
+++ b/docs/editor/storage.md
@@ -40,7 +40,7 @@ To persist data in Kloud Workspace, mount a volume to the `/workspace` directory
```sh{2}
docker run \
-v workspace:/workspace \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
In the command above:
@@ -75,7 +75,7 @@ you persist it separately:
docker run \
-v ws:/home/kloud/.ws \
-v workspace:/workspace \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Named Volumes vs. Bind Mounts
diff --git a/docs/editor/terminal.md b/docs/editor/terminal.md
index 8dfc3ba..52302d1 100644
--- a/docs/editor/terminal.md
+++ b/docs/editor/terminal.md
@@ -42,7 +42,7 @@ to your deployment:
docker run \
-e WS_TERMINAL_PROMPT_HIDE_DOCKER_CONTEXT=1 \
-e WS_TERMINAL_PROMPT_HIDE_PYTHON_VERSION=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Colorful Output
@@ -111,13 +111,13 @@ To modify the default set of plugins, adjust the `env` variables listed below:
```sh{2} [Override]
docker run \
-e WS_ZSH_PLUGINS="kubectl npm python pip" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2} [Append]
docker run \
-e WS_ZSH_ADDITIONAL_PLUGINS="php" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
diff --git a/docs/editor/theme-and-fonts.md b/docs/editor/theme-and-fonts.md
index 3c54f9b..e6efb64 100644
--- a/docs/editor/theme-and-fonts.md
+++ b/docs/editor/theme-and-fonts.md
@@ -61,7 +61,7 @@ environment variable to either `1` or `true`:
```sh{2}
docker run \
-e WS_EDITOR_COMMENTS_DISABLE_FONT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
The animation below shows comments in the default font and how they appear when the font
diff --git a/docs/pages/getting-started.md b/docs/pages/getting-started.md
index 5c99045..591ba28 100644
--- a/docs/pages/getting-started.md
+++ b/docs/pages/getting-started.md
@@ -50,14 +50,14 @@ port `8080`.
::: code-group
```sh [docker]
-docker run -p 8080:8080 ghcr.io/kloudkit/workspace:v0.3.0
+docker run -p 8080:8080 ghcr.io/kloudkit/workspace:v0.4.0
```
```yaml [compose]
version: '3.8'
services:
workspace:
- image: ghcr.io/kloudkit/workspace:v0.3.0
+ image: ghcr.io/kloudkit/workspace:v0.4.0
ports:
- 8080:8080
```
@@ -97,7 +97,7 @@ spec:
spec:
containers:
- name: workspace
- image: ghcr.io/kloudkit/workspace:v0.3.0
+ image: ghcr.io/kloudkit/workspace:v0.4.0
ports:
- containerPort: 8080
```
diff --git a/docs/settings/configuration.md b/docs/settings/configuration.md
index 0290817..4438a6d 100644
--- a/docs/settings/configuration.md
+++ b/docs/settings/configuration.md
@@ -62,14 +62,14 @@ The resolver returns the first match:
```sh [Env literal]
docker run \
-e WS_AUTH_PASSWORD=super_duper_secret \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh [file: prefix]
docker run \
-e WS_AUTH_PASSWORD=file:/run/secrets/workspace/auth/password \
-v ./password.txt:/run/secrets/workspace/auth/password:ro \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```yaml [Kubernetes]
diff --git a/docs/settings/secrets.md b/docs/settings/secrets.md
index d782633..de456a8 100644
--- a/docs/settings/secrets.md
+++ b/docs/settings/secrets.md
@@ -96,7 +96,7 @@ Use in Docker deployments:
```sh
docker run \
-e WS_AUTH_PASSWORD_HASHED=$PASSWORD \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
See [authentication documentation](/editor/authentication) for details.
diff --git a/docs/settings/tls.md b/docs/settings/tls.md
index 0a3bca0..90f32d2 100644
--- a/docs/settings/tls.md
+++ b/docs/settings/tls.md
@@ -71,7 +71,7 @@ docker run -d \
-e WS_SERVER_SSL_KEY=/certs/tls.key \
-e WS_SERVER_SSL_CERT="-----BEGIN CERTIFICATE-----..." \
-e WS_SERVER_PROXY_DOMAIN=ws.dev \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Enterprise CA *(Custom Certificates)*
@@ -95,13 +95,13 @@ To add your company's root CA, all you need to do is mount the certificate
```sh{2} [Single]
docker run \
-v /path/on-host/ca.crt:/usr/local/share/ca-certificates/workspace/ca.crt \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2} [Multiple]
docker run \
-v /folder/on-host:/usr/local/share/ca-certificates/workspace \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
@@ -120,7 +120,7 @@ up `.crt`; `.pem` and other extensions are silently skipped.
```sh
docker run \
-v $(pwd)/corp-ca.crt:/home/kloud/.ws/ca.d/corp-ca.crt \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
This is the recommended path for ad-hoc certificate injection on a
@@ -139,13 +139,13 @@ Use the `WS_CA_ADDITIONAL_CERT_ENDPOINTS` environment variable to define one or
```sh{2} [Single]
docker run \
-e WS_CA_ADDITIONAL_CERT_ENDPOINTS="https://corp.com/ca.pem" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2} [Multiple]
docker run \
-e WS_CA_ADDITIONAL_CERT_ENDPOINTS="https://corp.com/ca.pem https://alt.com/root.crt" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
@@ -168,13 +168,13 @@ validation is bypassed using insecure connections.
```sh{2} [Single]
docker run \
-e WS_CA_ADDITIONAL_CERT_INSECURE_ENDPOINTS="http://corp.com/ca.pem" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
```sh{2} [Multiple]
docker run \
-e WS_CA_ADDITIONAL_CERT_INSECURE_ENDPOINTS="http://corp.com/ca.pem https://untrusted.com/root.crt" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
:::
diff --git a/docs/settings/vault.md b/docs/settings/vault.md
index 0911b19..ebfdd93 100644
--- a/docs/settings/vault.md
+++ b/docs/settings/vault.md
@@ -115,7 +115,7 @@ path:
```sh
docker run \
-v /host/path/secrets.yaml:/home/kloud/.ws/vault/secrets.yaml \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Vault Flags
diff --git a/docs/tools/apt.md b/docs/tools/apt.md
index b4f004d..099de98 100644
--- a/docs/tools/apt.md
+++ b/docs/tools/apt.md
@@ -37,7 +37,7 @@ Supply one or more entries separated by semicolons *(`;`)*.
```sh{2}
docker run \
-e WS_APT_ADDITIONAL_REPOS="deb [signed-by=/custom.gpg] https://custom.package bookworm main" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Update Repository Cache
@@ -87,7 +87,7 @@ mail and printing blocked:
docker run \
-e WS_APT_DISABLE_RESTRICTIONS="x11" \
-e WS_APT_ADDITIONAL_PACKAGES="libx11-6" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
Lift every restriction at once with `true` *(or `*`)*:
@@ -95,7 +95,7 @@ Lift every restriction at once with `true` *(or `*`)*:
```sh{2}
docker run \
-e WS_APT_DISABLE_RESTRICTIONS=true \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Additional Packages
@@ -109,7 +109,7 @@ demonstrated below:
```sh{2}
docker run \
-e WS_APT_ADDITIONAL_PACKAGES="cmake nano" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
::: tip
@@ -157,5 +157,5 @@ Each key is downloaded at startup and stored in `/etc/apt/keyrings/.gpg`.
```sh{2}
docker run \
-e WS_APT_ADDITIONAL_GPG_KEYS="mycorp:https://mycorp.com/pubkey.asc extras:http://extras.test/key2.asc" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
diff --git a/docs/tools/cloudflared.md b/docs/tools/cloudflared.md
index 0c13fd0..87816af 100644
--- a/docs/tools/cloudflared.md
+++ b/docs/tools/cloudflared.md
@@ -27,7 +27,7 @@ ws feature install cloudflared
# Or at boot time
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="cloudflared" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Running a Tunnel
@@ -41,7 +41,7 @@ Provide it through `WS_CLOUDFLARED_TUNNEL_TOKEN` and the tunnel starts automatic
docker run \
-e WS_CLOUDFLARED_TUNNEL_TOKEN="" \
-e WS_FEATURES_ADDITIONAL_FEATURES="cloudflared" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
The tunnel is supervised: if it exits, it is restarted automatically.
diff --git a/docs/tools/cpp.md b/docs/tools/cpp.md
index d87c9e2..56be935 100644
--- a/docs/tools/cpp.md
+++ b/docs/tools/cpp.md
@@ -27,7 +27,7 @@ ws feature install cpp
# Or at boot time
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="cpp" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Selecting a Compiler Version
@@ -43,7 +43,7 @@ ws feature install cpp --opt version=13
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="cpp" \
-e WS_FEATURES_CPP_OPTS="version=13" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
> Supported versions: **13** and **14** *(default)*.
diff --git a/docs/tools/docker.md b/docs/tools/docker.md
index 70a2e62..b977c62 100644
--- a/docs/tools/docker.md
+++ b/docs/tools/docker.md
@@ -67,7 +67,7 @@ Once `sysbox` is installed, run the workspace using the `sysbox-runc` runtime:
docker run \
--runtime=sysbox-runc \
-e WS_DOCKER_ENABLE_CLIENT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### 2. Run `dockerd` in the Container
@@ -80,7 +80,7 @@ However, this requires the container to run in **privileged** mode:
docker run \
--privileged \
-e WS_DOCKER_ENABLE_CLIENT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### 3. Mounting the Docker Socket From the Host
@@ -91,7 +91,7 @@ docker run \
docker run \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e WS_DOCKER_ENABLE_CLIENT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### 4. Connect to a Remote Host *(TCP)*
@@ -104,7 +104,7 @@ Assuming you have access to a remote host running docker, you can set the value
```sh{2}
docker run \
-e DOCKER_HOST=tcp://:2375 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
Alternately, you can run the command above [securely][protect-tls] using port `2376` and
@@ -121,7 +121,7 @@ the value of `DOCKER_HOST` as follows
```sh{2}
docker run \
-e DOCKER_HOST=ssh://@ \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
This method is optimized by the workspace as we internally configure a persistent
@@ -160,7 +160,7 @@ This process is split into 3 steps:
-e DOCKER_HOST=tcp://dind:2375 \
-v workspace:/workspace \
--net dind \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
::: info NOTE
@@ -181,7 +181,7 @@ environment variable to effortlessly initiate the daemon *(if necessary)*:
```sh{2}
docker run \
-e WS_DOCKER_ENABLE_CLIENT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
### Docker Group
@@ -200,7 +200,7 @@ docker run \
--group-add=8888
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e WS_DOCKER_ENABLE_CLIENT=1 \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
Make sure to replace `8888` with the appropriate group ID from your host system.
diff --git a/docs/tools/dotnet.md b/docs/tools/dotnet.md
index e272d8b..bd5bde2 100644
--- a/docs/tools/dotnet.md
+++ b/docs/tools/dotnet.md
@@ -27,7 +27,7 @@ ws feature install dotnet
# Or at boot time
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="dotnet" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Selecting a .NET Version
@@ -43,7 +43,7 @@ ws feature install dotnet --opt version=9.0
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="dotnet" \
-e WS_FEATURES_DOTNET_OPTS="version=9.0" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
> Supported versions: **8.0**, **9.0**, and **10.0** *(default)*.
diff --git a/docs/tools/helm.md b/docs/tools/helm.md
index 377c1d0..792b920 100644
--- a/docs/tools/helm.md
+++ b/docs/tools/helm.md
@@ -40,5 +40,5 @@ To retain these configurations across workspace restarts or updates:
docker run \
-e WS_HELM_PRELOAD_CACHE=1 \
-v helm:/home/kloud/.config/helm \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
diff --git a/docs/tools/image-extras.md b/docs/tools/image-extras.md
index 6c5f7fd..0e68f68 100644
--- a/docs/tools/image-extras.md
+++ b/docs/tools/image-extras.md
@@ -24,7 +24,7 @@ ws feature install image-extras
# Or at boot time
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="image-extras" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## What's Included
diff --git a/docs/tools/python.md b/docs/tools/python.md
index e673c86..f5a8d17 100644
--- a/docs/tools/python.md
+++ b/docs/tools/python.md
@@ -45,7 +45,7 @@ libraries into the user site and `uv` to install global CLI tools.
docker run \
-e WS_PIP_ADDITIONAL_PACKAGES="httpx==0.27.0 rich" \
-e WS_UV_ADDITIONAL_TOOLS="ruff poetry==1.8.0" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## Automatic `venv` Activation
diff --git a/docs/tools/rust.md b/docs/tools/rust.md
index c23f8dd..dd7bcc2 100644
--- a/docs/tools/rust.md
+++ b/docs/tools/rust.md
@@ -28,7 +28,7 @@ ws feature install rust
# Or at boot time
docker run \
-e WS_FEATURES_ADDITIONAL_FEATURES="rust" \
- ghcr.io/kloudkit/workspace:v0.3.0
+ ghcr.io/kloudkit/workspace:v0.4.0
```
## What's Included