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: docs/images/docker-rawtherapee.md
+41-35Lines changed: 41 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,19 +70,22 @@ We are currently transitioning our desktop containers from X11 to Wayland. While
70
70
**Important:** GPU acceleration support for X11 is being deprecated. Future development for hardware acceleration will focus entirely on the Wayland stack.
71
71
72
72
To enable Wayland mode, set the following environment variable:
73
-
*`-e PIXELFLUX_WAYLAND=true`
73
+
74
+
*`-e PIXELFLUX_WAYLAND=true`
74
75
75
76
**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.
78
80
79
81
#### GPU Configuration
80
82
81
83
To use hardware acceleration in Wayland mode, we distinguish between the card used for **Rendering** (3D apps/Desktops) and **Encoding** (Video Stream).
82
84
83
85
**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).
86
89
87
90
If both variables point to the same device, the container will automatically enable **Zero Copy** encoding, significantly reducing CPU usage and latency.
88
91
@@ -107,16 +110,15 @@ This container is compatible with [SealSkin](https://sealskin.app).
107
110
108
111
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.
109
112
110
-
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
111
-
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
112
-
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
113
-
113
+
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
114
+
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
115
+
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
114
116
115
117
### Options in all Selkies-based GUI containers
116
118
117
119
This container is based on [Docker Baseimage Selkies](https://github.com/linuxserver/docker-baseimage-selkies).
118
120
119
-
???+ note "Click to expand: Optional Environment Variables"
121
+
??? note "Click to expand: Optional Environment Variables"
120
122
121
123
| Variable | Description |
122
124
| :----: | --- |
@@ -145,15 +147,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
145
147
| WATERMARK_LOCATION | Where to paint the image over the stream integer options below |
146
148
147
149
**`WATERMARK_LOCATION` Options:**
148
-
- **1**: Top Left
149
-
- **2**: Top Right
150
-
- **3**: Bottom Left
151
-
- **4**: Bottom Right
152
-
- **5**: Centered
153
-
- **6**: Animated
150
+
151
+
* **1**: Top Left
152
+
* **2**: Top Right
153
+
* **3**: Bottom Left
154
+
* **4**: Bottom Right
155
+
* **5**: Centered
156
+
* **6**: Animated
154
157
155
158
156
-
???+ note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
159
+
??? note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
157
160
158
161
| Argument | Description |
159
162
| :----: | --- |
@@ -162,7 +165,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
162
165
| `--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. |
163
166
164
167
165
-
???+ note "Click to expand: Legacy X11 Resolution & Acceleration"
168
+
??? note "Click to expand: Legacy X11 Resolution & Acceleration"
166
169
167
170
**Note:** This section applies only if you are **NOT** using `PIXELFLUX_WAYLAND=true`.
168
171
@@ -172,7 +175,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
172
175
173
176
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:
174
177
175
-
```
178
+
```bash
176
179
-e SELKIES_MANUAL_WIDTH=1920
177
180
-e SELKIES_MANUAL_HEIGHT=1080
178
181
-e MAX_RESOLUTION=1920x1080
@@ -183,16 +186,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
183
186
184
187
To launch the desktop session in a different language, set the `LC_ALL` environment variable. For example:
@@ -204,7 +207,7 @@ Natively installed packages (e.g., via `apt-get install`) will not persist if th
204
207
205
208
To install an application, use the command line inside the container:
206
209
207
-
```
210
+
```bash
208
211
proot-apps install filezilla
209
212
```
210
213
@@ -222,7 +225,7 @@ You can install packages from the system's native repository using the [universa
222
225
223
226
### Advanced Configuration
224
227
225
-
???+ note "Click to expand: Hardening Options"
228
+
??? note "Click to expand: Hardening Options"
226
229
227
230
These variables can be used to lock down the desktop environment for single-application use cases or to restrict user capabilities.
228
231
@@ -244,21 +247,24 @@ You can install packages from the system's native repository using the [universa
244
247
| **`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. |
245
248
246
249
247
-
???+ note "Click to expand: Selkies Application Settings"
250
+
??? note "Click to expand: Selkies Application Settings"
248
251
249
252
Using environment variables every facet of the application can be configured.
250
253
251
254
**Booleans and Locking:**
252
255
Boolean settings accept `true` or `false`. You can also prevent the user from changing a boolean setting in the UI by appending `|locked`.
253
-
* Example: `-e SELKIES_USE_CPU="true|locked"`
256
+
257
+
* Example: `-e SELKIES_USE_CPU="true|locked"`
254
258
255
259
**Enums and Lists:**
256
260
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.
257
-
* Example: `-e SELKIES_ENCODER="jpeg"`
261
+
262
+
* Example: `-e SELKIES_ENCODER="jpeg"`
258
263
259
264
**Ranges:**
260
265
Use a hyphen-separated `min-max` format for a slider, or a single number to lock the value.
261
-
* Example: `-e SELKIES_FRAMERATE="60"`
266
+
267
+
* Example: `-e SELKIES_FRAMERATE="60"`
262
268
263
269
**Manual Resolution Mode:**
264
270
If `SELKIES_MANUAL_WIDTH` or `SELKIES_MANUAL_HEIGHT` are set, the resolution is locked to those values.
0 commit comments