mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-07-02 03:58:45 +02:00
add nginx
This commit is contained in:
32
portainer/rootfs/etc/cont-init.d/32-nginx
Normal file
32
portainer/rootfs/etc/cont-init.d/32-nginx
Normal file
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/with-contenv bashio
|
||||
|
||||
#################
|
||||
# NGINX SETTING #
|
||||
#################
|
||||
declare port
|
||||
declare certfile
|
||||
declare ingress_interface
|
||||
declare ingress_port
|
||||
declare keyfile
|
||||
|
||||
port=$(bashio::addon.port 80)
|
||||
if bashio::var.has_value "${port}"; then
|
||||
bashio::config.require.ssl
|
||||
|
||||
if bashio::config.true 'ssl'; then
|
||||
certfile=$(bashio::config 'certfile')
|
||||
keyfile=$(bashio::config 'keyfile')
|
||||
|
||||
mv /etc/nginx/servers/direct-ssl.disabled /etc/nginx/servers/direct.conf
|
||||
sed -i "s/%%certfile%%/${certfile}/g" /etc/nginx/servers/direct.conf
|
||||
sed -i "s/%%keyfile%%/${keyfile}/g" /etc/nginx/servers/direct.conf
|
||||
|
||||
else
|
||||
mv /etc/nginx/servers/direct.disabled /etc/nginx/servers/direct.conf
|
||||
fi
|
||||
fi
|
||||
|
||||
ingress_port=$(bashio::addon.ingress_port)
|
||||
ingress_interface=$(bashio::addon.ip_address)
|
||||
sed -i "s/%%port%%/${ingress_port}/g" /etc/nginx/servers/ingress.conf
|
||||
sed -i "s/%%interface%%/${ingress_interface}/g" /etc/nginx/servers/ingress.conf
|
||||
@@ -1,64 +0,0 @@
|
||||
#!/usr/bin/env bashio
|
||||
|
||||
##################
|
||||
# DEFINE OPTIONS #
|
||||
##################
|
||||
declare -a options
|
||||
options+=(--data /data)
|
||||
options+=(--bind 0.0.0.0:9000)
|
||||
options+=(--templates /opt/portainer/templates.json)
|
||||
options+=(--host unix:///var/run/docker.sock)
|
||||
|
||||
bashio::log.info "Starting Portainer..."
|
||||
|
||||
################
|
||||
# SET PASSWORD #
|
||||
################
|
||||
|
||||
PASSWORD=$(bashio::config 'password')
|
||||
echo -n $PASSWORD > /tmp/portainer_password
|
||||
options+=(--admin-password-file /tmp/portainer_password)
|
||||
bashio::log.info "... password set to $PASSWORD"
|
||||
|
||||
##############
|
||||
# SSL CONFIG #
|
||||
##############
|
||||
|
||||
bashio::config.require.ssl
|
||||
if bashio::config.true 'ssl'; then
|
||||
bashio::log.info "ssl enabled. If webui don't work, disable ssl or check your certificate paths"
|
||||
#set variables
|
||||
CERTFILE="/ssl/$(bashio::config 'certfile')"
|
||||
KEYFILE="/ssl/$(bashio::config 'keyfile')"
|
||||
options+=(--ssl true)
|
||||
options+=(--sslcert /ssl/$CERTFILE)
|
||||
options+=(--sslkey /ssl/$KEYFILE)
|
||||
bashio::log.info "... ssl activated"
|
||||
fi
|
||||
|
||||
###################
|
||||
# HIDE CONTAINERS #
|
||||
###################
|
||||
|
||||
# Hide Hassio containers by default, but only eforce on first run
|
||||
if ! bashio::fs.file_exists "/data/hidden"; then
|
||||
options+=(--hide-label io.hass.type=supervisor)
|
||||
options+=(--hide-label io.hass.type=homeassistant)
|
||||
options+=(--hide-label io.hass.type=base)
|
||||
options+=(--hide-label io.hass.type=core)
|
||||
# options+=(--hide-label io.hass.type=addon)
|
||||
options+=(--hide-label io.hass.type=audio)
|
||||
options+=(--hide-label io.hass.type=cli)
|
||||
options+=(--hide-label io.hass.type=dns)
|
||||
options+=(--hide-label io.hass.type=multicast)
|
||||
options+=(--hide-label io.hass.type=observer)
|
||||
bashio::log.info "... non-addon containers hidden"
|
||||
touch /data/hidden
|
||||
fi
|
||||
|
||||
####################
|
||||
# LAUNCH PORTAINER #
|
||||
####################
|
||||
bashio::log.info "... portainer launched"
|
||||
|
||||
exec /opt/portainer/portainer "${options[@]}"
|
||||
Reference in New Issue
Block a user