Compare commits

..

28 Commits

Author SHA1 Message Date
LinuxServer-CI
b4b73022db Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-02-21 04:42:02 +00:00
LinuxServer-CI
9d5ebb6a7a Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-02-14 04:50:10 +00:00
LinuxServer-CI
7ad019e68d Bot Updating Templated Files 2026-02-14 04:45:56 +00:00
LinuxServer-CI
59ef2df680 Bot Updating Templated Files 2026-02-14 04:44:20 +00:00
LinuxServer-CI
db874b2c0f Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-02-10 05:08:06 +00:00
LinuxServer-CI
6182a75998 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-02-07 04:43:17 +00:00
LinuxServer-CI
145c5d84f6 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-02-06 14:17:14 +00:00
LinuxServer-CI
1039f2a04c Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-02-03 19:48:04 +00:00
LinuxServer-CI
156e3ac160 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-01-31 04:29:28 +00:00
LinuxServer-CI
e649bd71da Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-01-26 00:38:36 +00:00
LinuxServer-CI
b54c263769 Bot Updating Templated Files 2026-01-26 00:34:15 +00:00
aptalca
7b11fb9643 Merge pull request #600 from linuxserver/sample-race
reorder init to make sure samples are copied before version checks
2026-01-25 19:32:30 -05:00
LinuxServer-CI
72d187c734 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-01-24 04:03:28 +00:00
aptalca
b6752babcd sandwich swag folder creation and sample copying between nginx base's permissions and version checks to make sure samples are there when the check happens 2026-01-23 21:37:09 -05:00
Adam
6f38cebe04 Merge pull request #597 from hadjilucasL/patch-1
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-01-18 10:04:48 +00:00
LinuxServer-CI
62b3a02aed Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-01-17 03:59:34 +00:00
LinuxServer-CI
2deac3dac6 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2026-01-13 11:05:27 +00:00
LinuxServer-CI
48cbb269cc Bot Updating Templated Files 2026-01-13 11:00:44 +00:00
Adam
8489cde7c0 Merge pull request #596 from CaptivatingCat/hetzner-cloud 2026-01-13 10:59:01 +00:00
CaptivatingCat
a120a68aae Merge branch 'master' into hetzner-cloud 2026-01-11 14:55:29 +01:00
LinuxServer-CI
1674ff4509 Bot Updating Package Versions
Some checks failed
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
2026-01-10 04:00:48 +00:00
CaptivatingCat
52707530e2 Merge branch 'master' into hetzner-cloud 2026-01-07 23:30:22 +01:00
CaptivatingCat
cbf78b31bb Fix missing quote in readme-vars.yml 2026-01-07 23:29:05 +01:00
Lucas Hadjilucas
2fc01f4e21 Merge branch 'master' into patch-1 2026-01-04 21:36:59 +02:00
CaptivatingCat
4a7daa06ad Merge branch 'master' into hetzner-cloud 2025-12-31 22:39:27 +01:00
Lucas Hadjilucas
77dc5ff352 Merge branch 'master' into patch-1 2025-12-27 23:14:14 +02:00
Lucas Hadjilucas
0ab1a76dae Restore symlink paths for letsencrypt keys
To solve #549
2025-12-23 22:46:59 +02:00
CaptivatingCat
8b8b491df3 add support for hetzner-cloud dns validation 2025-12-21 00:55:30 +01:00
11 changed files with 98 additions and 92 deletions

View File

@@ -114,6 +114,7 @@ RUN \
certbot-dns-google \
certbot-dns-he \
certbot-dns-hetzner \
certbot-dns-hetzner-cloud \
certbot-dns-infomaniak \
certbot-dns-inwx \
certbot-dns-ionos \

View File

@@ -114,6 +114,7 @@ RUN \
certbot-dns-google \
certbot-dns-he \
certbot-dns-hetzner \
certbot-dns-hetzner-cloud \
certbot-dns-infomaniak \
certbot-dns-inwx \
certbot-dns-ionos \

2
Jenkinsfile vendored
View File

@@ -283,7 +283,7 @@ pipeline {
-v ${WORKSPACE}:/mnt \
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
ghcr.io/linuxserver/baseimage-alpine:3 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
ghcr.io/linuxserver/baseimage-alpine:3.23 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache python3 && \
python3 -m venv /lsiopy && \
pip install --no-cache-dir -U pip && \

View File

@@ -170,7 +170,7 @@ This image can be run with a read-only container filesystem. For details please
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
>[!NOTE]
>Unless a parameter is flaged as 'optional', it is *mandatory* and a value must be provided.
>Unless a parameter is flagged as 'optional', it is *mandatory* and a value must be provided.
### docker-compose (recommended, [click here for more info](https://docs.linuxserver.io/general/docker-compose))
@@ -254,7 +254,7 @@ Containers are configured using parameters passed at runtime (such as those abov
| `-e VALIDATION=http` | Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set). |
| `-e SUBDOMAINS=www,` | Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only) |
| `-e CERTPROVIDER=` | Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt. |
| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. |
| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `he`, `hetzner`, `hetzner-cloud`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. |
| `-e PROPAGATION=` | Optionally override (in seconds) the default propagation time for the dns plugins. |
| `-e EMAIL=` | Optional e-mail address used for cert expiration notifications (Required for ZeroSSL). |
| `-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` |
@@ -433,6 +433,8 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **23.01.26:** - Reorder init to fix proxy conf version checks.
* **21.12.25:** - Add support for hetzner-cloud dns validation.
* **04.11.25:** - Switch default Gandi credentials from API Key to Token, allow DNS propagation time for Azure DNS plugin.
* **18.07.25:** - Rebase to Alpine 3.22 with PHP 8.4. Add QUIC support. Drop PHP bindings for mcrypt as it is no longer maintained.
* **05.05.25:** - Disable Certbot's built in log rotation.

View File

@@ -1,11 +1,11 @@
NAME VERSION TYPE
Simple Launcher 1.1.0.14 binary (+5 duplicates)
acl-libs 2.3.2-r1 apk
acme 5.2.2 python
acme 5.3.1 python
alpine-baselayout 3.7.0-r0 apk
alpine-baselayout-data 3.7.0-r0 apk
alpine-keys 2.5-r0 apk
alpine-release 3.22.2-r0 apk
alpine-release 3.22.3-r0 apk
aom-libs 3.12.1-r0 apk
apache2-utils 2.4.66-r0 apk
apk-tools 2.14.9-r3 apk
@@ -15,15 +15,15 @@ argon2-libs 20190702-r5 apk
attrs 25.4.0 python
autocommand 2.2.2 python
azure-common 1.1.28 python
azure-core 1.37.0 python
azure-identity 1.25.1 python
azure-core 1.38.2 python
azure-identity 1.25.2 python
azure-mgmt-core 1.6.0 python
azure-mgmt-dns 9.0.0 python
backports-tarfile 1.2.0 python
bash 5.2.37-r0 apk
beautifulsoup4 4.14.3 python
boto3 1.42.21 python
botocore 1.42.21 python
boto3 1.42.54 python
botocore 1.42.54 python
brotli-libs 1.1.0-r2 apk
bs4 0.0.2 python
busybox 1.37.0-r20 apk
@@ -32,53 +32,53 @@ c-ares 1.34.6-r0 apk
c-client 2007f-r15 apk
ca-certificates 20250911-r0 apk
ca-certificates-bundle 20250911-r0 apk
cachetools 6.2.4 python
catatonit 0.2.1-r0 apk
certbot 5.2.2 python
certbot 5.3.1 python
certbot-dns-acmedns 0.1.0 python
certbot-dns-aliyun 2.0.0 python
certbot-dns-azure 1.5.0 python
certbot-dns-bunny 3.0.0 python
certbot-dns-cloudflare 5.2.2 python
certbot-dns-cloudflare 5.3.1 python
certbot-dns-cpanel 0.4.0 python
certbot-dns-desec 1.3.2 python
certbot-dns-digitalocean 5.2.2 python
certbot-dns-digitalocean 5.3.1 python
certbot-dns-directadmin 1.0.15 python
certbot-dns-dnsimple 5.2.2 python
certbot-dns-dnsmadeeasy 5.2.2 python
certbot-dns-dnsimple 5.3.1 python
certbot-dns-dnsmadeeasy 5.3.1 python
certbot-dns-dnspod 0.1.0 python
certbot-dns-do 0.31.0 python
certbot-dns-domeneshop 0.2.9 python
certbot-dns-dreamhost 1.0 python
certbot-dns-duckdns 1.7.1 python
certbot-dns-duckdns 1.8.0 python
certbot-dns-dynudns 0.0.6 python
certbot-dns-freedns 0.2.0 python
certbot-dns-gehirn 5.2.2 python
certbot-dns-gehirn 5.3.1 python
certbot-dns-glesys 2.1.0 python
certbot-dns-godaddy 2.8.0 python
certbot-dns-google 5.2.2 python
certbot-dns-google 5.3.1 python
certbot-dns-he 1.0.0 python
certbot-dns-hetzner 2.0.1 python
certbot-dns-hetzner 3.0.0 python
certbot-dns-hetzner-cloud 1.0.5 python
certbot-dns-infomaniak 0.2.4 python
certbot-dns-inwx 3.0.3 python
certbot-dns-ionos 2024.11.9 python
certbot-dns-linode 5.2.2 python
certbot-dns-linode 5.3.1 python
certbot-dns-loopia 1.0.1 python
certbot-dns-luadns 5.2.2 python
certbot-dns-luadns 5.3.1 python
certbot-dns-namecheap 1.0.0 python
certbot-dns-netcup 2.0.0 python
certbot-dns-njalla 2.0.2 python
certbot-dns-nsone 5.2.2 python
certbot-dns-ovh 5.2.2 python
certbot-dns-nsone 5.3.1 python
certbot-dns-ovh 5.3.1 python
certbot-dns-porkbun 0.11.0 python
certbot-dns-rfc2136 5.2.2 python
certbot-dns-route53 5.2.2 python
certbot-dns-sakuracloud 5.2.2 python
certbot-dns-rfc2136 5.3.1 python
certbot-dns-route53 5.3.1 python
certbot-dns-sakuracloud 5.3.1 python
certbot-dns-standalone 1.2.1 python
certbot-dns-transip 0.5.2 python
certbot-dns-vultr 1.1.0 python
certbot-plugin-gandi 1.5.0 python
certifi 2025.11.12 python
certifi 2026.1.4 python
cffi 2.0.0 python
charset-normalizer 3.4.4 python
cli UNKNOWN binary
@@ -86,24 +86,25 @@ cli-32 UNKNOWN binary
cli-64 UNKNOWN binary
cli-arm64 UNKNOWN binary
cloudflare 2.19.4 python
composer 2.9.3 binary
composer 2.9.5 binary
configargparse 1.7.1 python
configobj 5.0.9 python
coreutils 9.7-r1 apk
coreutils-env 9.7-r1 apk
coreutils-fmt 9.7-r1 apk
coreutils-sha512sum 9.7-r1 apk
cryptography 46.0.3 python
cryptography 46.0.5 python
curl 8.14.1-r2 apk
distro 1.9.0 python
dns-lexicon 3.23.2 python
dns-lexicon-coop 3.24.2 python
dnslib 0.9.26 python
dnspython 2.8.0 python
domeneshop 0.4.4 python
fail2ban 1.1.0 python
fail2ban 1.1.0-r3 apk
fail2ban-pyc 1.1.0-r3 apk
filelock 3.20.2 python
filelock 3.24.3 python
findutils 4.10.0-r0 apk
fontconfig 2.15.0-r3 apk
freetype 2.13.3-r0 apk
@@ -120,9 +121,9 @@ gnupg-keyboxd 2.4.9-r0 apk
gnupg-utils 2.4.9-r0 apk
gnupg-wks-client 2.4.9-r0 apk
gnutls 3.8.8-r0 apk
google-api-core 2.28.1 python
google-api-python-client 2.187.0 python
google-auth 2.45.0 python
google-api-core 2.30.0 python
google-api-python-client 2.190.0 python
google-auth 2.48.0 python
google-auth-httplib2 0.3.0 python
googleapis-common-protos 1.72.0 python
gpg 2.4.9-r0 apk
@@ -134,24 +135,23 @@ gui UNKNOWN binary
gui-32 UNKNOWN binary
gui-64 UNKNOWN binary
gui-arm64 UNKNOWN binary
httplib2 0.31.0 python
hcloud 2.16.0 python
httplib2 0.31.2 python
icu-data-en 76.1-r1 apk
icu-libs 76.1-r1 apk
idna 3.11 python
importlib-metadata 8.0.0 python
inflect 7.3.1 python
importlib-metadata 8.7.1 python
inotify-tools 4.23.9.0-r0 apk
inotify-tools-libs 4.23.9.0-r0 apk
inwx-domrobot 3.2.0 python
iptables 1.8.11-r1 apk
iptables-legacy 1.8.11-r1 apk
isodate 0.7.2 python
jaraco-collections 5.1.0 python
jaraco-context 5.3.0 python
jaraco-functools 4.0.1 python
jaraco-text 3.12.1 python
jaraco-context 6.1.0 python
jaraco-functools 4.4.0 python
jaraco-text 4.0.0 python
jinja2 3.1.6 python
jmespath 1.0.1 python
jmespath 1.1.0 python
josepy 2.2.0 python
jq 1.8.1-r0 apk
jsonlines 4.0.0 python
@@ -162,12 +162,12 @@ libattr 2.5.2-r2 apk
libavif 1.3.0-r0 apk
libbsd 0.12.2-r0 apk
libbz2 1.0.8-r6 apk
libcrypto3 3.5.4-r0 apk
libcrypto3 3.5.5-r0 apk
libcurl 8.14.1-r2 apk
libdav1d 1.5.1-r0 apk
libedit 20250104.3.1-r1 apk
libevent 2.1.12-r8 apk
libexpat 2.7.3-r0 apk
libexpat 2.7.4-r0 apk
libffi 3.4.8-r0 apk
libgcc 14.2.0-r6 apk
libgcrypt 1.10.3-r1 apk
@@ -188,8 +188,8 @@ libmnl 1.0.5-r2 apk
libncursesw 6.5_p20250503-r0 apk
libnftnl 1.2.9-r0 apk
libpanelw 6.5_p20250503-r0 apk
libpng 1.6.53-r0 apk
libpq 17.7-r0 apk
libpng 1.6.54-r0 apk
libpq 17.8-r0 apk
libproc2 4.0.4-r3 apk
libpsl 0.21.5-r3 apk
libsasl 2.1.28-r8 apk
@@ -197,9 +197,9 @@ libseccomp 2.6.0-r0 apk
libsharpyuv 1.5.0-r0 apk
libsm 1.2.5-r0 apk
libsodium 1.0.20-r1 apk
libssl3 3.5.4-r0 apk
libssl3 3.5.5-r0 apk
libstdc++ 14.2.0-r6 apk
libtasn1 4.20.0-r0 apk
libtasn1 4.21.0-r0 apk
libunistring 1.3-r0 apk
libuuid 2.41-r9 apk
libwebp 1.5.0-r0 apk
@@ -223,42 +223,41 @@ lz4-libs 1.10.0-r0 apk
markupsafe 3.0.3 python
memcached 1.6.32-r0 apk
mock 5.2.0 python
more-itertools 10.3.0 python
more-itertools 10.8.0 python
mpdecimal 4.0.1-r0 apk
msal 1.34.0 python
msal-extensions 1.3.1 python
musl 1.2.5-r10 apk
musl-utils 1.2.5-r10 apk
my-test-package 1.0 python
nano 8.4-r0 apk
ncurses-terminfo-base 6.5_p20250503-r0 apk
netcat-openbsd 1.229.1-r0 apk
nettle 3.10.1-r0 apk
nghttp2-libs 1.65.0-r0 apk
nginx 1.28.0-r3 apk
nginx-mod-devel-kit 1.28.0-r3 apk
nginx-mod-http-brotli 1.28.0-r3 apk
nginx-mod-http-dav-ext 1.28.0-r3 apk
nginx-mod-http-echo 1.28.0-r3 apk
nginx-mod-http-fancyindex 1.28.0-r3 apk
nginx-mod-http-geoip2 1.28.0-r3 apk
nginx-mod-http-headers-more 1.28.0-r3 apk
nginx-mod-http-image-filter 1.28.0-r3 apk
nginx-mod-http-perl 1.28.0-r3 apk
nginx-mod-http-redis2 1.28.0-r3 apk
nginx-mod-http-set-misc 1.28.0-r3 apk
nginx-mod-http-upload-progress 1.28.0-r3 apk
nginx-mod-http-xslt-filter 1.28.0-r3 apk
nginx-mod-mail 1.28.0-r3 apk
nginx-mod-rtmp 1.28.0-r3 apk
nginx-mod-stream 1.28.0-r3 apk
nginx-mod-stream-geoip2 1.28.0-r3 apk
nginx-vim 1.28.0-r3 apk
nginx 1.28.2-r0 apk
nginx-mod-devel-kit 1.28.2-r0 apk
nginx-mod-http-brotli 1.28.2-r0 apk
nginx-mod-http-dav-ext 1.28.2-r0 apk
nginx-mod-http-echo 1.28.2-r0 apk
nginx-mod-http-fancyindex 1.28.2-r0 apk
nginx-mod-http-geoip2 1.28.2-r0 apk
nginx-mod-http-headers-more 1.28.2-r0 apk
nginx-mod-http-image-filter 1.28.2-r0 apk
nginx-mod-http-perl 1.28.2-r0 apk
nginx-mod-http-redis2 1.28.2-r0 apk
nginx-mod-http-set-misc 1.28.2-r0 apk
nginx-mod-http-upload-progress 1.28.2-r0 apk
nginx-mod-http-xslt-filter 1.28.2-r0 apk
nginx-mod-mail 1.28.2-r0 apk
nginx-mod-rtmp 1.28.2-r0 apk
nginx-mod-stream 1.28.2-r0 apk
nginx-mod-stream-geoip2 1.28.2-r0 apk
nginx-vim 1.28.2-r0 apk
npth 1.8-r0 apk
oniguruma 6.9.10-r0 apk
openssl 3.5.4-r0 apk
openssl 3.5.5-r0 apk
p11-kit 0.25.5-r2 apk
packaging 24.2 python
packaging 26.0 python (+1 duplicate)
parsedatetime 2.6 python
pcre2 10.46-r0 apk
perl 5.40.3-r0 apk
@@ -313,23 +312,23 @@ php84-xmlwriter 8.4.16-r0 apk
php84-xsl 8.4.16-r0 apk
php84-zip 8.4.16-r0 apk
pinentry 1.3.1-r0 apk
pip 25.3 python
pip 26.0.1 python
pkb-client 2.2.0 python
platformdirs 4.2.2 python
platformdirs 4.4.0 python
popt 1.19-r4 apk
procps-ng 4.0.4-r3 apk
proto-plus 1.27.0 python
protobuf 6.33.2 python
proto-plus 1.27.1 python
protobuf 6.33.5 python
pyacmedns 0.4 python
pyasn1 0.6.1 python
pyasn1 0.6.2 python
pyasn1-modules 0.4.2 python
pyc 3.12.12-r0 apk
pycparser 2.23 python
pyjwt 2.10.1 python
pycparser 3.0 python
pyjwt 2.11.0 python
pynamecheap 0.0.3 python
pyopenssl 25.3.0 python
pyotp 2.9.0 python
pyparsing 3.3.1 python
pyparsing 3.3.2 python
pyrfc3339 2.1.0 python
python-dateutil 2.9.0.post0 python
python-digitalocean 1.17.0 python
@@ -345,28 +344,26 @@ requests-mock 1.12.1 python
rsa 4.9.1 python
s3transfer 0.16.0 python
scanelf 1.3.8-r1 apk
setuptools 80.9.0 python
setuptools 82.0.0 python
shadow 4.17.3-r0 apk
six 1.17.0 python
skalibs-libs 2.14.4.0-r0 apk
soupsieve 2.8.1 python
soupsieve 2.8.3 python
sqlite-libs 3.49.2-r1 apk
ssl_client 1.37.0-r20 apk
tiff 4.7.1-r0 apk
tldextract 5.3.1 python
tomli 2.0.1 python
typeguard 4.3.0 python
typing-extensions 4.12.2 python
tomli 2.4.0 python
typing-extensions 4.15.0 python
tzdata 2025c-r0 apk
unixodbc 2.3.12-r0 apk
uritemplate 4.2.0 python
urllib3 2.6.2 python
urllib3 2.6.3 python
utmps-libs 0.1.3.1-r0 apk
wheel 0.45.1 python (+1 duplicate)
wheel 0.46.3 python (+1 duplicate)
whois 5.6.3-r0 apk
xz-libs 5.8.1-r0 apk
zipp 3.19.2 python
zipp 3.23.0 python
zlib 1.3.1-r2 apk
zope-interface 8.1.1 python
zope-interface 8.2 python
zstd-libs 1.5.7-r0 apk

View File

@@ -32,7 +32,7 @@ opt_param_usage_include_env: true
opt_param_env_vars:
- {env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)"}
- {env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt."}
- {env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`."}
- {env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `he`, `hetzner`, `hetzner-cloud`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`."}
- {env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins."}
- {env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)."}
- {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`"}
@@ -177,7 +177,7 @@ init_diagram: |
init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile
init-swag-samples -> init-fail2ban-config
init-require-url -> init-fail2ban-config
init-os-end -> init-folders
init-php -> init-keygen
base -> init-migrations
@@ -198,9 +198,10 @@ init_diagram: |
init-folders -> init-samples
init-custom-files -> init-services
init-fail2ban-config -> init-swag-config
init-require-url -> init-swag-folders
init-permissions -> init-swag-folders
init-swag-folders -> init-swag-samples
init-permissions -> init-version-checks
init-swag-samples -> init-version-checks
init-services -> svc-cron
svc-cron -> legacy-services
init-services -> svc-fail2ban
@@ -218,6 +219,8 @@ init_diagram: |
"swag:latest" <- Base Images
# changelog
changelogs:
- {date: "23.01.26:", desc: "Reorder init to fix proxy conf version checks."}
- {date: "21.12.25:", desc: "Add support for hetzner-cloud dns validation."}
- {date: "04.11.25:", desc: "Switch default Gandi credentials from API Key to Token, allow DNS propagation time for Azure DNS plugin."}
- {date: "18.07.25:", desc: "Rebase to Alpine 3.22 with PHP 8.4. Add QUIC support. Drop PHP bindings for mcrypt as it is no longer maintained."}
- {date: "05.05.25:", desc: "Disable Certbot's built in log rotation."}

View File

@@ -0,0 +1,2 @@
# Hetzner Cloud API Token
dns_hetzner_cloud_api_token = your_api_token_here

View File

@@ -168,9 +168,9 @@ fi
rm -rf /config/keys/letsencrypt
if [[ "${ONLY_SUBDOMAINS}" = "true" ]] && [[ ! "${SUBDOMAINS}" = "wildcard" ]]; then
DOMAIN="$(echo "${SUBDOMAINS}" | tr ',' ' ' | awk '{print $1}').${URL}"
ln -s /config/etc/letsencrypt/live/"${DOMAIN}" /config/keys/letsencrypt
ln -s ../etc/letsencrypt/live/"${DOMAIN}" /config/keys/letsencrypt
else
ln -s /config/etc/letsencrypt/live/"${URL}" /config/keys/letsencrypt
ln -s ../etc/letsencrypt/live/"${URL}" /config/keys/letsencrypt
fi
# cleanup unused csr and keys folders