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
+14
Original file line number
Diff line number
Diff line change
@@ -149,6 +149,15 @@ This will *ask* Google et al not to index and list your site. Be careful with th
149
149
150
150
Please follow the instructions [on this blog post](https://www.linuxserver.io/blog/2020-08-21-introducing-swag#migrate).
151
151
152
+
## Read-Only Operation
153
+
154
+
This image can be run with a read-only container filesystem. For details please [read the docs](https://docs.linuxserver.io/misc/read-only/).
155
+
156
+
### Caveats
157
+
158
+
*`/tmp` must be mounted to tmpfs
159
+
* fail2ban will not be available
160
+
152
161
## Usage
153
162
154
163
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
@@ -180,6 +189,7 @@ services:
180
189
- ONLY_SUBDOMAINS=false #optional
181
190
- EXTRA_DOMAINS= #optional
182
191
- STAGING=false #optional
192
+
- DISABLE_F2B= #optional
183
193
volumes:
184
194
- /path/to/swag/config:/config
185
195
ports:
@@ -207,6 +217,7 @@ docker run -d \
207
217
-e ONLY_SUBDOMAINS=false `#optional` \
208
218
-e EXTRA_DOMAINS= `#optional` \
209
219
-e STAGING=false `#optional` \
220
+
-e DISABLE_F2B= `#optional` \
210
221
-p 443:443 \
211
222
-p 80:80 `#optional` \
212
223
-v /path/to/swag/config:/config \
@@ -235,7 +246,9 @@ Containers are configured using parameters passed at runtime (such as those abov
235
246
|`-e ONLY_SUBDOMAINS=false`| If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`|
|`-e STAGING=false`| Set to `true` to retrieve certs in staging mode. Rate limits will be much higher, but the resulting cert will not pass the browser's security test. Only to be used for testing purposes. |
249
+
|`-e DISABLE_F2B=`| Set to `true` to disable the Fail2ban service in the container, if you're already running it elsewhere or using a different IPS. |
238
250
|`-v /config`| Persistent config files |
251
+
|`--read-only=true`| Run container with a read-only filesystem. Please [read the docs](https://docs.linuxserver.io/misc/read-only/). |
239
252
|`--cap-add=NET_ADMIN`| Required for fail2Ban to be able to modify iptables rules. |
240
253
241
254
### Portainer notice
@@ -404,6 +417,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
404
417
405
418
## Versions
406
419
420
+
***17.12.24:** - Rebase to Alpine 3.21.
407
421
***21.10.24:** - Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are setin /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns).
408
422
***30.08.24:** - Fix zerossl cert revocation.
409
423
***24.07.14:** - Rebase to Alpine 3.20. Remove deprecated Google Domains certbot plugin. Existing users should update their nginx confs to avoid http2 deprecation warnings.
Copy file name to clipboardexpand all lines: readme-vars.yml
+6
Original file line number
Diff line number
Diff line change
@@ -37,9 +37,14 @@ opt_param_env_vars:
37
37
- {env_var: "ONLY_SUBDOMAINS", env_value: "false", desc: "If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`"}
- {env_var: "STAGING", env_value: "false", desc: "Set to `true` to retrieve certs in staging mode. Rate limits will be much higher, but the resulting cert will not pass the browser's security test. Only to be used for testing purposes."}
40
+
- {env_var: "DISABLE_F2B", env_value: "", desc: "Set to `true` to disable the Fail2ban service in the container, if you're already running it elsewhere or using a different IPS."}
40
41
opt_param_usage_include_ports: true
41
42
opt_param_ports:
42
43
- {external_port: "80", internal_port: "80", port_desc: "HTTP port (required for HTTP validation and HTTP -> HTTPS redirect)"}
44
+
readonly_supported: true
45
+
readonly_message: |
46
+
* `/tmp` must be mounted to tmpfs
47
+
* fail2ban will not be available
43
48
# application setup block
44
49
app_setup_block_enabled: true
45
50
app_setup_block: |
@@ -200,6 +205,7 @@ init_diagram: |
200
205
"swag:latest" <- Base Images
201
206
# changelog
202
207
changelogs:
208
+
- {date: "17.12.24:", desc: "Rebase to Alpine 3.21."}
203
209
- {date: "21.10.24:", desc: "Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are set in /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns)."}
echo "ERROR: Cert does not exist! Please see the validation error above. Make sure you entered correct credentials into the ${DNSCREDENTIALFILE} file."
0 commit comments