Skip to content

Commit 453d47d

Browse files
Bot Updating Documentation
1 parent cdfe405 commit 453d47d

1 file changed

Lines changed: 48 additions & 39 deletions

File tree

docs/images/docker-signal.md

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

7575
To enable Wayland mode, set the following environment variable:
76-
* `-e PIXELFLUX_WAYLAND=true`
76+
77+
* `-e PIXELFLUX_WAYLAND=true`
7778

7879
**Why use Wayland?**
79-
* **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.
80-
* **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.
80+
81+
* **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.
82+
* **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.
8183

8284
#### GPU Configuration
8385

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

8688
**Configuration Variables:**
87-
* `DRINODE`: The path to the GPU used for **Rendering** (EGL).
88-
* `DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
89+
90+
* `DRINODE`: The path to the GPU used for **Rendering** (EGL).
91+
* `DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
8992

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

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

122127
```yaml
128+
---
123129
services:
124130
signal:
125131
image: lscr.io/linuxserver/signal:latest
@@ -143,16 +149,15 @@ This container is compatible with [SealSkin](https://sealskin.app).
143149

144150
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.
145151

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

151156
### Options in all Selkies-based GUI containers
152157

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

155-
???+ note "Click to expand: Optional Environment Variables"
160+
??? note "Click to expand: Optional Environment Variables"
156161

157162
| Variable | Description |
158163
| :----: | --- |
@@ -181,15 +186,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
181186
| WATERMARK_LOCATION | Where to paint the image over the stream integer options below |
182187

183188
**`WATERMARK_LOCATION` Options:**
184-
- **1**: Top Left
185-
- **2**: Top Right
186-
- **3**: Bottom Left
187-
- **4**: Bottom Right
188-
- **5**: Centered
189-
- **6**: Animated
189+
190+
* **1**: Top Left
191+
* **2**: Top Right
192+
* **3**: Bottom Left
193+
* **4**: Bottom Right
194+
* **5**: Centered
195+
* **6**: Animated
190196

191197

192-
???+ note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
198+
??? note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
193199

194200
| Argument | Description |
195201
| :----: | --- |
@@ -198,7 +204,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
198204
| `--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. |
199205

200206

201-
???+ note "Click to expand: Legacy X11 Resolution & Acceleration"
207+
??? note "Click to expand: Legacy X11 Resolution & Acceleration"
202208

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

@@ -208,7 +214,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
208214

209215
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:
210216

211-
```
217+
```bash
212218
-e SELKIES_MANUAL_WIDTH=1920
213219
-e SELKIES_MANUAL_HEIGHT=1080
214220
-e MAX_RESOLUTION=1920x1080
@@ -219,16 +225,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
219225

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

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

233239
### Application Management
234240

@@ -240,7 +246,7 @@ Natively installed packages (e.g., via `apt-get install`) will not persist if th
240246

241247
To install an application, use the command line inside the container:
242248

243-
```
249+
```bash
244250
proot-apps install filezilla
245251
```
246252

@@ -258,7 +264,7 @@ You can install packages from the system's native repository using the [universa
258264

259265
### Advanced Configuration
260266

261-
???+ note "Click to expand: Hardening Options"
267+
??? note "Click to expand: Hardening Options"
262268

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

@@ -280,21 +286,24 @@ You can install packages from the system's native repository using the [universa
280286
| **`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. |
281287

282288

283-
???+ note "Click to expand: Selkies Application Settings"
289+
??? note "Click to expand: Selkies Application Settings"
284290

285291
Using environment variables every facet of the application can be configured.
286292

287293
**Booleans and Locking:**
288294
Boolean settings accept `true` or `false`. You can also prevent the user from changing a boolean setting in the UI by appending `|locked`.
289-
* Example: `-e SELKIES_USE_CPU="true|locked"`
295+
296+
* Example: `-e SELKIES_USE_CPU="true|locked"`
290297

291298
**Enums and Lists:**
292299
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.
293-
* Example: `-e SELKIES_ENCODER="jpeg"`
300+
301+
* Example: `-e SELKIES_ENCODER="jpeg"`
294302

295303
**Ranges:**
296304
Use a hyphen-separated `min-max` format for a slider, or a single number to lock the value.
297-
* Example: `-e SELKIES_FRAMERATE="60"`
305+
306+
* Example: `-e SELKIES_FRAMERATE="60"`
298307

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

0 commit comments

Comments
 (0)