mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-08-06 13:12:31 +02:00
Persist NPM Let's Encrypt certificates
This commit is contained in:
@@ -1,15 +1,13 @@
|
|||||||
## 2.14.1 (19-06-2026)
|
|
||||||
- Minor bugs fixed
|
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## 2.14.1
|
## 2.14.1-1 (11-07-2026)
|
||||||
|
- Persist Let's Encrypt certificates across restarts by symlinking /etc/letsencrypt to /data/letsencrypt (#2828) — thanks to @crazyrokr for reporting and suggesting the fix
|
||||||
|
|
||||||
|
## 2.14.1 (19-06-2026)
|
||||||
- Fix startup failure on aarch64/HAos: "/usr/bin/env: 'bash': Permission denied" (#2777)
|
- Fix startup failure on aarch64/HAos: "/usr/bin/env: 'bash': Permission denied" (#2777)
|
||||||
- Add s6-overlay/env/with-contenv exec rules to AppArmor profile
|
- Add s6-overlay/env/with-contenv exec rules to AppArmor profile
|
||||||
|
|
||||||
## 2.14.0
|
## 2.14.0 (01-05-2026)
|
||||||
- Minor bugs fixed
|
|
||||||
|
|
||||||
## 2.14.0
|
|
||||||
- Initial release wrapping jc21/nginx-proxy-manager:latest
|
- Initial release wrapping jc21/nginx-proxy-manager:latest
|
||||||
- NPM Admin UI on port 81; HTTP on port 80; HTTPS on port 443
|
- NPM Admin UI on port 81; HTTP on port 80; HTTPS on port 443
|
||||||
- Configurable static file server via NPM's default_host nginx config
|
- Configurable static file server via NPM's default_host nginx config
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
name: "Nginx Proxy Manager + Static Web Server"
|
name: "Nginx Proxy Manager + Static Web Server"
|
||||||
slug: nginx_webserver_proxy
|
slug: nginx_webserver_proxy
|
||||||
description: "Nginx Proxy Manager with a built-in configurable static file server. Manage reverse proxies via NPM UI on port 81 while serving files from HA storage on port 80."
|
description: "Nginx Proxy Manager with a built-in configurable static file server. Manage reverse proxies via NPM UI on port 81 while serving files from HA storage on port 80."
|
||||||
version: "2.14.1"
|
version: "2.14.1-1"
|
||||||
url: "https://github.com/alexbelgium/hassio-addons/tree/master/nginx_webserver_proxy"
|
url: "https://github.com/alexbelgium/hassio-addons/tree/master/nginx_webserver_proxy"
|
||||||
arch:
|
arch:
|
||||||
- amd64
|
- amd64
|
||||||
- aarch64
|
- aarch64
|
||||||
startup: services
|
startup: services
|
||||||
init: false
|
init: false
|
||||||
|
|
||||||
ports:
|
ports:
|
||||||
80/tcp: 80
|
80/tcp: 80
|
||||||
81/tcp: 81
|
81/tcp: 81
|
||||||
@@ -17,24 +16,19 @@ ports_description:
|
|||||||
80/tcp: "HTTP (static site + NPM proxy hosts)"
|
80/tcp: "HTTP (static site + NPM proxy hosts)"
|
||||||
81/tcp: "NPM Admin Web UI"
|
81/tcp: "NPM Admin Web UI"
|
||||||
443/tcp: "HTTPS (NPM proxy hosts)"
|
443/tcp: "HTTPS (NPM proxy hosts)"
|
||||||
|
|
||||||
webui: "http://[HOST]:[PORT:81]"
|
webui: "http://[HOST]:[PORT:81]"
|
||||||
|
|
||||||
map:
|
map:
|
||||||
- addon_config:rw
|
- addon_config:rw
|
||||||
- share:rw
|
- share:rw
|
||||||
- media:rw
|
- media:rw
|
||||||
|
|
||||||
options:
|
options:
|
||||||
static_site_enabled: true
|
static_site_enabled: true
|
||||||
static_site_root: "/share/www"
|
static_site_root: "/share/www"
|
||||||
static_site_prefix: "/"
|
static_site_prefix: "/"
|
||||||
log_level: "info"
|
log_level: "info"
|
||||||
|
|
||||||
schema:
|
schema:
|
||||||
static_site_enabled: bool
|
static_site_enabled: bool
|
||||||
static_site_root: str
|
static_site_root: str
|
||||||
static_site_prefix: str
|
static_site_prefix: str
|
||||||
log_level: list(info|debug|warn|error)
|
log_level: list(info|debug|warn|error)
|
||||||
|
|
||||||
image: "ghcr.io/alexbelgium/nginx_webserver_proxy-{arch}"
|
image: "ghcr.io/alexbelgium/nginx_webserver_proxy-{arch}"
|
||||||
|
|||||||
@@ -111,8 +111,16 @@ fi
|
|||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
log "static_site_root=${STATIC_ROOT} prefix=${STATIC_PREFIX} log_level=${LOG_LEVEL}"
|
log "static_site_root=${STATIC_ROOT} prefix=${STATIC_PREFIX} log_level=${LOG_LEVEL}"
|
||||||
# NPM's prepare service requires /etc/letsencrypt to exist.
|
# NPM's prepare service requires /etc/letsencrypt to exist.
|
||||||
# HA Supervisor maps the ssl volume there automatically; for other environments create it.
|
# Symlink /etc/letsencrypt to /data/letsencrypt for persistence across restarts.
|
||||||
mkdir -p /etc/letsencrypt
|
# Supervisor persists /data as a Docker volume; /etc/letsencrypt would otherwise be ephemeral.
|
||||||
|
if [ ! -L /etc/letsencrypt ]; then
|
||||||
|
if [ -d /etc/letsencrypt ] && [ "$(ls -A /etc/letsencrypt 2> /dev/null)" ]; then
|
||||||
|
cp -a /etc/letsencrypt/. /data/letsencrypt/ 2> /dev/null || true
|
||||||
|
fi
|
||||||
|
rm -rf /etc/letsencrypt
|
||||||
|
ln -sf /data/letsencrypt /etc/letsencrypt
|
||||||
|
fi
|
||||||
|
mkdir -p /data/letsencrypt
|
||||||
|
|
||||||
log "Handing off to NPM: exec /init"
|
log "Handing off to NPM: exec /init"
|
||||||
exec /init
|
exec /init
|
||||||
|
|||||||
Reference in New Issue
Block a user