mirror of
https://github.com/linuxserver/docker-swag.git
synced 2024-10-01 01:35:49 -04:00
Rebase to Alpine 3.19 with php 8.3, add root periodic crontabs for logrotate
Signed-off-by: Eric Nemchik <eric@nemchik.com>
This commit is contained in:
parent
bf6ab14281
commit
bc31b51afb
66
Dockerfile
66
Dockerfile
@ -1,6 +1,6 @@
|
|||||||
# syntax=docker/dockerfile:1
|
# syntax=docker/dockerfile:1
|
||||||
|
|
||||||
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.18
|
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.19
|
||||||
|
|
||||||
# set version label
|
# set version label
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -45,39 +45,39 @@ RUN \
|
|||||||
nginx-mod-stream \
|
nginx-mod-stream \
|
||||||
nginx-mod-stream-geoip2 \
|
nginx-mod-stream-geoip2 \
|
||||||
nginx-vim \
|
nginx-vim \
|
||||||
php82-bcmath \
|
php83-bcmath \
|
||||||
php82-bz2 \
|
php83-bz2 \
|
||||||
php82-dom \
|
php83-dom \
|
||||||
php82-exif \
|
php83-exif \
|
||||||
php82-ftp \
|
php83-ftp \
|
||||||
php82-gd \
|
php83-gd \
|
||||||
php82-gmp \
|
php83-gmp \
|
||||||
php82-imap \
|
php83-imap \
|
||||||
php82-intl \
|
php83-intl \
|
||||||
php82-ldap \
|
php83-ldap \
|
||||||
php82-mysqli \
|
php83-mysqli \
|
||||||
php82-mysqlnd \
|
php83-mysqlnd \
|
||||||
php82-opcache \
|
php83-opcache \
|
||||||
php82-pdo_mysql \
|
php83-pdo_mysql \
|
||||||
php82-pdo_odbc \
|
php83-pdo_odbc \
|
||||||
php82-pdo_pgsql \
|
php83-pdo_pgsql \
|
||||||
php82-pdo_sqlite \
|
php83-pdo_sqlite \
|
||||||
php82-pear \
|
php83-pear \
|
||||||
php82-pecl-apcu \
|
php83-pecl-apcu \
|
||||||
php82-pecl-memcached \
|
php83-pecl-memcached \
|
||||||
php82-pecl-redis \
|
php83-pecl-redis \
|
||||||
php82-pgsql \
|
php83-pgsql \
|
||||||
php82-posix \
|
php83-posix \
|
||||||
php82-soap \
|
php83-soap \
|
||||||
php82-sockets \
|
php83-sockets \
|
||||||
php82-sodium \
|
php83-sodium \
|
||||||
php82-sqlite3 \
|
php83-sqlite3 \
|
||||||
php82-tokenizer \
|
php83-tokenizer \
|
||||||
php82-xmlreader \
|
php83-xmlreader \
|
||||||
php82-xsl \
|
php83-xsl \
|
||||||
whois && \
|
whois && \
|
||||||
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||||
php82-pecl-mcrypt && \
|
php83-pecl-mcrypt && \
|
||||||
echo "**** install certbot plugins ****" && \
|
echo "**** install certbot plugins ****" && \
|
||||||
if [ -z ${CERTBOT_VERSION+x} ]; then \
|
if [ -z ${CERTBOT_VERSION+x} ]; then \
|
||||||
CERTBOT_VERSION=$(curl -sL https://pypi.python.org/pypi/certbot/json |jq -r '. | .info.version'); \
|
CERTBOT_VERSION=$(curl -sL https://pypi.python.org/pypi/certbot/json |jq -r '. | .info.version'); \
|
||||||
@ -86,7 +86,7 @@ RUN \
|
|||||||
pip install -U --no-cache-dir \
|
pip install -U --no-cache-dir \
|
||||||
pip \
|
pip \
|
||||||
wheel && \
|
wheel && \
|
||||||
pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.18/ \
|
pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.19/ \
|
||||||
certbot==${CERTBOT_VERSION} \
|
certbot==${CERTBOT_VERSION} \
|
||||||
certbot-dns-acmedns \
|
certbot-dns-acmedns \
|
||||||
certbot-dns-aliyun \
|
certbot-dns-aliyun \
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# syntax=docker/dockerfile:1
|
# syntax=docker/dockerfile:1
|
||||||
|
|
||||||
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.18
|
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.19
|
||||||
|
|
||||||
# set version label
|
# set version label
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -45,39 +45,39 @@ RUN \
|
|||||||
nginx-mod-stream \
|
nginx-mod-stream \
|
||||||
nginx-mod-stream-geoip2 \
|
nginx-mod-stream-geoip2 \
|
||||||
nginx-vim \
|
nginx-vim \
|
||||||
php82-bcmath \
|
php83-bcmath \
|
||||||
php82-bz2 \
|
php83-bz2 \
|
||||||
php82-dom \
|
php83-dom \
|
||||||
php82-exif \
|
php83-exif \
|
||||||
php82-ftp \
|
php83-ftp \
|
||||||
php82-gd \
|
php83-gd \
|
||||||
php82-gmp \
|
php83-gmp \
|
||||||
php82-imap \
|
php83-imap \
|
||||||
php82-intl \
|
php83-intl \
|
||||||
php82-ldap \
|
php83-ldap \
|
||||||
php82-mysqli \
|
php83-mysqli \
|
||||||
php82-mysqlnd \
|
php83-mysqlnd \
|
||||||
php82-opcache \
|
php83-opcache \
|
||||||
php82-pdo_mysql \
|
php83-pdo_mysql \
|
||||||
php82-pdo_odbc \
|
php83-pdo_odbc \
|
||||||
php82-pdo_pgsql \
|
php83-pdo_pgsql \
|
||||||
php82-pdo_sqlite \
|
php83-pdo_sqlite \
|
||||||
php82-pear \
|
php83-pear \
|
||||||
php82-pecl-apcu \
|
php83-pecl-apcu \
|
||||||
php82-pecl-memcached \
|
php83-pecl-memcached \
|
||||||
php82-pecl-redis \
|
php83-pecl-redis \
|
||||||
php82-pgsql \
|
php83-pgsql \
|
||||||
php82-posix \
|
php83-posix \
|
||||||
php82-soap \
|
php83-soap \
|
||||||
php82-sockets \
|
php83-sockets \
|
||||||
php82-sodium \
|
php83-sodium \
|
||||||
php82-sqlite3 \
|
php83-sqlite3 \
|
||||||
php82-tokenizer \
|
php83-tokenizer \
|
||||||
php82-xmlreader \
|
php83-xmlreader \
|
||||||
php82-xsl \
|
php83-xsl \
|
||||||
whois && \
|
whois && \
|
||||||
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||||
php82-pecl-mcrypt && \
|
php83-pecl-mcrypt && \
|
||||||
echo "**** install certbot plugins ****" && \
|
echo "**** install certbot plugins ****" && \
|
||||||
if [ -z ${CERTBOT_VERSION+x} ]; then \
|
if [ -z ${CERTBOT_VERSION+x} ]; then \
|
||||||
CERTBOT_VERSION=$(curl -sL https://pypi.python.org/pypi/certbot/json |jq -r '. | .info.version'); \
|
CERTBOT_VERSION=$(curl -sL https://pypi.python.org/pypi/certbot/json |jq -r '. | .info.version'); \
|
||||||
@ -86,7 +86,7 @@ RUN \
|
|||||||
pip install -U --no-cache-dir \
|
pip install -U --no-cache-dir \
|
||||||
pip \
|
pip \
|
||||||
wheel && \
|
wheel && \
|
||||||
pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.18/ \
|
pip install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.19/ \
|
||||||
certbot==${CERTBOT_VERSION} \
|
certbot==${CERTBOT_VERSION} \
|
||||||
certbot-dns-acmedns \
|
certbot-dns-acmedns \
|
||||||
certbot-dns-aliyun \
|
certbot-dns-aliyun \
|
||||||
|
@ -180,7 +180,7 @@ services:
|
|||||||
- EXTRA_DOMAINS= #optional
|
- EXTRA_DOMAINS= #optional
|
||||||
- STAGING=false #optional
|
- STAGING=false #optional
|
||||||
volumes:
|
volumes:
|
||||||
- /path/to/appdata/config:/config
|
- /path/to/swag/config:/config
|
||||||
ports:
|
ports:
|
||||||
- 443:443
|
- 443:443
|
||||||
- 80:80 #optional
|
- 80:80 #optional
|
||||||
@ -208,7 +208,7 @@ docker run -d \
|
|||||||
-e STAGING=false `#optional` \
|
-e STAGING=false `#optional` \
|
||||||
-p 443:443 \
|
-p 443:443 \
|
||||||
-p 80:80 `#optional` \
|
-p 80:80 `#optional` \
|
||||||
-v /path/to/appdata/config:/config \
|
-v /path/to/swag/config:/config \
|
||||||
--restart unless-stopped \
|
--restart unless-stopped \
|
||||||
lscr.io/linuxserver/swag:latest
|
lscr.io/linuxserver/swag:latest
|
||||||
```
|
```
|
||||||
@ -234,7 +234,7 @@ Containers are configured using parameters passed at runtime (such as those abov
|
|||||||
| `-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 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 EXTRA_DOMAINS=` | Additional fully qualified domain names (comma separated, no spaces) ie. `extradomain.com,subdomain.anotherdomain.org,*.anotherdomain.org` |
|
| `-e EXTRA_DOMAINS=` | Additional fully qualified domain names (comma separated, no spaces) ie. `extradomain.com,subdomain.anotherdomain.org,*.anotherdomain.org` |
|
||||||
| `-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. |
|
| `-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. |
|
||||||
| `-v /config` | All the config files including the webroot reside here. |
|
| `-v /config` | Persistent config files |
|
||||||
|
|
||||||
### Portainer notice
|
### Portainer notice
|
||||||
|
|
||||||
@ -416,6 +416,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
|||||||
|
|
||||||
## Versions
|
## Versions
|
||||||
|
|
||||||
|
* **23.12.23:** - Rebase to Alpine 3.19 with php 8.3, add root periodic crontabs for logrotate.
|
||||||
* **11.12.23:** - Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins.
|
* **11.12.23:** - Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins.
|
||||||
* **30.11.23:** - [Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404.
|
* **30.11.23:** - [Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404.
|
||||||
* **23.11.23:** - Run certbot as root to allow fix http validation.
|
* **23.11.23:** - Run certbot as root to allow fix http validation.
|
||||||
|
@ -34,7 +34,7 @@ param_env_vars:
|
|||||||
- { env_var: "VALIDATION", env_value: "http", desc: "Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set)." }
|
- { env_var: "VALIDATION", env_value: "http", desc: "Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set)." }
|
||||||
param_usage_include_vols: true
|
param_usage_include_vols: true
|
||||||
param_volumes:
|
param_volumes:
|
||||||
- { vol_path: "/config", vol_host_path: "/path/to/appdata/config", desc: "All the config files including the webroot reside here." }
|
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Persistent config files" }
|
||||||
param_usage_include_ports: true
|
param_usage_include_ports: true
|
||||||
param_ports:
|
param_ports:
|
||||||
- { external_port: "443", internal_port: "443", port_desc: "Https port" }
|
- { external_port: "443", internal_port: "443", port_desc: "Https port" }
|
||||||
@ -58,7 +58,7 @@ opt_param_env_vars:
|
|||||||
- { 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." }
|
- { 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." }
|
||||||
opt_param_usage_include_vols: false
|
opt_param_usage_include_vols: false
|
||||||
opt_param_volumes:
|
opt_param_volumes:
|
||||||
- { vol_path: "/config", vol_host_path: "/path/to/appdata/config", desc: "Configuration files." }
|
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Persistent config files" }
|
||||||
opt_param_usage_include_ports: true
|
opt_param_usage_include_ports: true
|
||||||
opt_param_ports:
|
opt_param_ports:
|
||||||
- { external_port: "80", internal_port: "80", port_desc: "Http port (required for http validation and http -> https redirect)" }
|
- { external_port: "80", internal_port: "80", port_desc: "Http port (required for http validation and http -> https redirect)" }
|
||||||
@ -168,6 +168,7 @@ app_setup_block: |
|
|||||||
|
|
||||||
# changelog
|
# changelog
|
||||||
changelogs:
|
changelogs:
|
||||||
|
- { date: "23.12.23:", desc: "Rebase to Alpine 3.19 with php 8.3, add root periodic crontabs for logrotate." }
|
||||||
- { date: "11.12.23:", desc: "Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins." }
|
- { date: "11.12.23:", desc: "Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins." }
|
||||||
- { date: "30.11.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." }
|
- { date: "30.11.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." }
|
||||||
- { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." }
|
- { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." }
|
||||||
|
@ -1,2 +1,8 @@
|
|||||||
# min hour day month weekday command
|
# min hour day month weekday command
|
||||||
|
*/15 * * * * run-parts /etc/periodic/15min
|
||||||
|
0 * * * * run-parts /etc/periodic/hourly
|
||||||
|
0 2 * * * run-parts /etc/periodic/daily
|
||||||
|
0 3 * * 6 run-parts /etc/periodic/weekly
|
||||||
|
0 5 1 * * run-parts /etc/periodic/monthly
|
||||||
|
|
||||||
8 2 * * * /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1
|
8 2 * * * /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1
|
||||||
|
Loading…
Reference in New Issue
Block a user