Skip to content

Commit 677769b

Browse files
Bot Updating Documentation
1 parent b3a339b commit 677769b

File tree

1 file changed

+48
-39
lines changed

1 file changed

+48
-39
lines changed

docs/images/docker-vscodium.md

Lines changed: 48 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,22 @@ We are currently transitioning our desktop containers from X11 to Wayland. While
7070
**Important:** GPU acceleration support for X11 is being deprecated. Future development for hardware acceleration will focus entirely on the Wayland stack.
7171

7272
To enable Wayland mode, set the following environment variable:
73-
* `-e PIXELFLUX_WAYLAND=true`
73+
74+
* `-e PIXELFLUX_WAYLAND=true`
7475

7576
**Why use Wayland?**
76-
* **Zero Copy Encoding:** When configured correctly with a GPU, the frame is rendered and encoded on the video card without ever being copied to the system RAM. This drastically lowers CPU usage and latency.
77-
* **Modern Stack:** Single-application containers utilize **Labwc** (replacing Openbox) and full desktop containers use **KDE Plasma Wayland**, providing a more modern and secure compositing environment while retaining the same user experience.
77+
78+
* **Zero Copy Encoding:** When configured correctly with a GPU, the frame is rendered and encoded on the video card without ever being copied to the system RAM. This drastically lowers CPU usage and latency.
79+
* **Modern Stack:** Single-application containers utilize **Labwc** (replacing Openbox) and full desktop containers use **KDE Plasma Wayland**, providing a more modern and secure compositing environment while retaining the same user experience.
7880

7981
#### GPU Configuration
8082

8183
To use hardware acceleration in Wayland mode, we distinguish between the card used for **Rendering** (3D apps/Desktops) and **Encoding** (Video Stream).
8284

8385
**Configuration Variables:**
84-
* `DRINODE`: The path to the GPU used for **Rendering** (EGL).
85-
* `DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
86+
87+
* `DRINODE`: The path to the GPU used for **Rendering** (EGL).
88+
* `DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
8689

8790
If both variables point to the same device, the container will automatically enable **Zero Copy** encoding, significantly reducing CPU usage and latency.
8891

@@ -105,10 +108,12 @@ For Intel and AMD GPUs.
105108
**Note: Nvidia support is not available for Alpine-based images.**
106109
107110
**Prerequisites:**
108-
1. **Driver:** Proprietary drivers **580 or higher** are required.
109-
2. **Kernel Parameter:** Set `nvidia-drm.modeset=1` in your host bootloader (GRUB/systemd-boot).
110-
3. **Initialization:** On headless systems, run `nvidia-modprobe --modeset` on the host (once per boot) to initialize the card.
111-
4. **Docker Runtime:** Configure the host docker daemon to use the Nvidia runtime:
111+
112+
1. **Driver:** Proprietary drivers **580 or higher** are required.
113+
2. **Kernel Parameter:** Set `nvidia-drm.modeset=1` in your host bootloader (GRUB/systemd-boot).
114+
3. **Initialization:** On headless systems, run `nvidia-modprobe --modeset` on the host (once per boot) to initialize the card.
115+
4. **Docker Runtime:** Configure the host docker daemon to use the Nvidia runtime:
116+
112117
```bash
113118
sudo nvidia-ctk runtime configure --runtime=docker
114119
sudo systemctl restart docker
@@ -117,6 +122,7 @@ For Intel and AMD GPUs.
117122
**Compose Configuration:**
118123

119124
```yaml
125+
---
120126
services:
121127
vscodium:
122128
image: lscr.io/linuxserver/vscodium:latest
@@ -140,16 +146,15 @@ This container is compatible with [SealSkin](https://sealskin.app).
140146

141147
SealSkin is a self-hosted, client-server platform that provides secure authentication and collaboration features while using a browser extension to intercept user actions such as clicking a link or downloading a file and redirect them to a secure, isolated application environment running on a remote server.
142148

143-
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
144-
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
145-
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
146-
149+
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
150+
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
151+
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
147152

148153
### Options in all Selkies-based GUI containers
149154

150155
This container is based on [Docker Baseimage Selkies](https://github.com/linuxserver/docker-baseimage-selkies).
151156

152-
???+ note "Click to expand: Optional Environment Variables"
157+
??? note "Click to expand: Optional Environment Variables"
153158

154159
| Variable | Description |
155160
| :----: | --- |
@@ -178,15 +183,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
178183
| WATERMARK_LOCATION | Where to paint the image over the stream integer options below |
179184

180185
**`WATERMARK_LOCATION` Options:**
181-
- **1**: Top Left
182-
- **2**: Top Right
183-
- **3**: Bottom Left
184-
- **4**: Bottom Right
185-
- **5**: Centered
186-
- **6**: Animated
186+
187+
* **1**: Top Left
188+
* **2**: Top Right
189+
* **3**: Bottom Left
190+
* **4**: Bottom Right
191+
* **5**: Centered
192+
* **6**: Animated
187193

188194

189-
???+ note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
195+
??? note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
190196

191197
| Argument | Description |
192198
| :----: | --- |
@@ -195,7 +201,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
195201
| `--device /dev/dri:/dev/dri` | Mount a GPU into the container, this can be used in conjunction with the `DRINODE` environment variable to leverage a host video card for GPU accelerated applications. |
196202

197203

198-
???+ note "Click to expand: Legacy X11 Resolution & Acceleration"
204+
??? note "Click to expand: Legacy X11 Resolution & Acceleration"
199205

200206
**Note:** This section applies only if you are **NOT** using `PIXELFLUX_WAYLAND=true`.
201207

@@ -205,7 +211,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
205211

206212
This will set the total virtual framebuffer to 4K. By default, the virtual monitor is 16K. If you have performance issues in an accelerated X11 session, try clamping the resolution to 1080p and work up from there:
207213

208-
```
214+
```bash
209215
-e SELKIES_MANUAL_WIDTH=1920
210216
-e SELKIES_MANUAL_HEIGHT=1080
211217
-e MAX_RESOLUTION=1920x1080
@@ -216,16 +222,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
216222

217223
To launch the desktop session in a different language, set the `LC_ALL` environment variable. For example:
218224

219-
* `-e LC_ALL=zh_CN.UTF-8` - Chinese
220-
* `-e LC_ALL=ja_JP.UTF-8` - Japanese
221-
* `-e LC_ALL=ko_KR.UTF-8` - Korean
222-
* `-e LC_ALL=ar_AE.UTF-8` - Arabic
223-
* `-e LC_ALL=ru_RU.UTF-8` - Russian
224-
* `-e LC_ALL=es_MX.UTF-8` - Spanish (Latin America)
225-
* `-e LC_ALL=de_DE.UTF-8` - German
226-
* `-e LC_ALL=fr_FR.UTF-8` - French
227-
* `-e LC_ALL=nl_NL.UTF-8` - Netherlands
228-
* `-e LC_ALL=it_IT.UTF-8` - Italian
225+
* `-e LC_ALL=zh_CN.UTF-8` - Chinese
226+
* `-e LC_ALL=ja_JP.UTF-8` - Japanese
227+
* `-e LC_ALL=ko_KR.UTF-8` - Korean
228+
* `-e LC_ALL=ar_AE.UTF-8` - Arabic
229+
* `-e LC_ALL=ru_RU.UTF-8` - Russian
230+
* `-e LC_ALL=es_MX.UTF-8` - Spanish (Latin America)
231+
* `-e LC_ALL=de_DE.UTF-8` - German
232+
* `-e LC_ALL=fr_FR.UTF-8` - French
233+
* `-e LC_ALL=nl_NL.UTF-8` - Netherlands
234+
* `-e LC_ALL=it_IT.UTF-8` - Italian
229235

230236
### Application Management
231237

@@ -237,7 +243,7 @@ Natively installed packages (e.g., via `apt-get install`) will not persist if th
237243

238244
To install an application, use the command line inside the container:
239245

240-
```
246+
```bash
241247
proot-apps install filezilla
242248
```
243249

@@ -255,7 +261,7 @@ You can install packages from the system's native repository using the [universa
255261

256262
### Advanced Configuration
257263

258-
???+ note "Click to expand: Hardening Options"
264+
??? note "Click to expand: Hardening Options"
259265

260266
These variables can be used to lock down the desktop environment for single-application use cases or to restrict user capabilities.
261267

@@ -277,21 +283,24 @@ You can install packages from the system's native repository using the [universa
277283
| **`RESTART_APP`** | If true, enables a watchdog service that automatically restarts the main application if it is closed. The user's autostart script is made read-only and root owned to prevent tampering. |
278284

279285

280-
???+ note "Click to expand: Selkies Application Settings"
286+
??? note "Click to expand: Selkies Application Settings"
281287

282288
Using environment variables every facet of the application can be configured.
283289

284290
**Booleans and Locking:**
285291
Boolean settings accept `true` or `false`. You can also prevent the user from changing a boolean setting in the UI by appending `|locked`.
286-
* Example: `-e SELKIES_USE_CPU="true|locked"`
292+
293+
* Example: `-e SELKIES_USE_CPU="true|locked"`
287294

288295
**Enums and Lists:**
289296
These settings accept a comma-separated list of values. The first item becomes default. If only one item is provided, the UI dropdown is hidden.
290-
* Example: `-e SELKIES_ENCODER="jpeg"`
297+
298+
* Example: `-e SELKIES_ENCODER="jpeg"`
291299

292300
**Ranges:**
293301
Use a hyphen-separated `min-max` format for a slider, or a single number to lock the value.
294-
* Example: `-e SELKIES_FRAMERATE="60"`
302+
303+
* Example: `-e SELKIES_FRAMERATE="60"`
295304

296305
**Manual Resolution Mode:**
297306
If `SELKIES_MANUAL_WIDTH` or `SELKIES_MANUAL_HEIGHT` are set, the resolution is locked to those values.

0 commit comments

Comments
 (0)