fix
This commit is contained in:
@@ -138,33 +138,33 @@ RUN set -eux; \
|
||||
|
||||
STOPSIGNAL SIGUSR1
|
||||
|
||||
ENV ALLOW_RESTARTS=0 \
|
||||
AUTH=0 \
|
||||
BUILD=0 \
|
||||
COMMIT=0 \
|
||||
CONFIGS=0 \
|
||||
CONTAINERS=0 \
|
||||
DISTRIBUTION=0 \
|
||||
EVENTS=1 \
|
||||
EXEC=0 \
|
||||
GRPC=0 \
|
||||
IMAGES=0 \
|
||||
INFO=0 \
|
||||
LOG_LEVEL=info \
|
||||
NETWORKS=0 \
|
||||
NODES=0 \
|
||||
PING=1 \
|
||||
PLUGINS=0 \
|
||||
POST=0 \
|
||||
SECRETS=0 \
|
||||
SERVICES=0 \
|
||||
SESSION=0 \
|
||||
SOCKET_PATH=/var/run/docker.sock \
|
||||
SWARM=0 \
|
||||
SYSTEM=0 \
|
||||
TASKS=0 \
|
||||
VERSION=1 \
|
||||
VOLUMES=0
|
||||
ENV ENABLE_ALLOW_RESTARTS=0 \
|
||||
ENABLE_AUTH=0 \
|
||||
ENABLE_BUILD=0 \
|
||||
ENABLE_COMMIT=0 \
|
||||
ENABLE_CONFIGS=0 \
|
||||
ENABLE_CONTAINERS=0 \
|
||||
ENABLE_DISTRIBUTION=0 \
|
||||
ENABLE_EVENTS=1 \
|
||||
ENABLE_EXEC=0 \
|
||||
ENABLE_GRPC=0 \
|
||||
ENABLE_IMAGES=0 \
|
||||
ENABLE_INFO=0 \
|
||||
ENABLE_LOG_LEVEL=info \
|
||||
ENABLE_NETWORKS=0 \
|
||||
ENABLE_NODES=0 \
|
||||
ENABLE_PING=1 \
|
||||
ENABLE_PLUGINS=0 \
|
||||
ENABLE_POST=0 \
|
||||
ENABLE_SECRETS=0 \
|
||||
ENABLE_SERVICES=0 \
|
||||
ENABLE_SESSION=0 \
|
||||
ENABLE_SOCKET_PATH=/var/run/docker.sock \
|
||||
ENABLE_SWARM=0 \
|
||||
ENABLE_SYSTEM=0 \
|
||||
ENABLE_TASKS=0 \
|
||||
ENABLE_VERSION=1 \
|
||||
ENABLE_VOLUMES=0
|
||||
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
|
||||
|
||||
EXPOSE 2375
|
||||
|
||||
@@ -41,31 +41,31 @@ backend dockerbackend
|
||||
|
||||
frontend dockerfrontend
|
||||
bind :2375
|
||||
http-request deny unless METH_GET || { env(POST) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/[a-zA-Z0-9_.-]+/((stop)|(restart)|(kill)) } { env(ALLOW_RESTARTS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/auth } { env(AUTH) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/build } { env(BUILD) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/commit } { env(COMMIT) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/configs } { env(CONFIGS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers } { env(CONTAINERS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/distribution } { env(DISTRIBUTION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/events } { env(EVENTS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/exec } { env(EXEC) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/grpc } { env(GRPC) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/images } { env(IMAGES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/info } { env(INFO) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/networks } { env(NETWORKS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/nodes } { env(NODES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/_ping } { env(PING) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/plugins } { env(PLUGINS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/secrets } { env(SECRETS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/services } { env(SERVICES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/session } { env(SESSION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/swarm } { env(SWARM) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/system } { env(SYSTEM) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/tasks } { env(TASKS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/version } { env(VERSION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/volumes } { env(VOLUMES) -m bool }
|
||||
http-request deny unless METH_GET || { env(ENABLE_POST) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/[a-zA-Z0-9_.-]+/((stop)|(restart)|(kill)) } { env(ENABLE_ALLOW_RESTARTS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/auth } { env(ENABLE_AUTH) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/build } { env(ENABLE_BUILD) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/commit } { env(ENABLE_COMMIT) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/configs } { env(ENABLE_CONFIGS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers } { env(ENABLE_CONTAINERS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/distribution } { env(ENABLE_DISTRIBUTION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/events } { env(ENABLE_EVENTS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/exec } { env(ENABLE_EXEC) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/grpc } { env(ENABLE_GRPC) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/images } { env(ENABLE_IMAGES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/info } { env(ENABLE_INFO) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/networks } { env(ENABLE_NETWORKS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/nodes } { env(ENABLE_NODES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/_ping } { env(ENABLE_PING) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/plugins } { env(ENABLE_PLUGINS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/secrets } { env(ENABLE_SECRETS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/services } { env(ENABLE_SERVICES) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/session } { env(ENABLE_SESSION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/swarm } { env(ENABLE_SWARM) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/system } { env(ENABLE_SYSTEM) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/tasks } { env(ENABLE_TASKS) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/version } { env(ENABLE_VERSION) -m bool }
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/volumes } { env(ENABLE_VOLUMES) -m bool }
|
||||
http-request deny
|
||||
default_backend dockerbackend
|
||||
|
||||
@@ -8,194 +8,194 @@ touch ${SETTINGS_CONF}
|
||||
|
||||
if bashio::var.true 'events'; then
|
||||
bashio::log.info "Enabling events"
|
||||
echo "export EVENTS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_EVENTS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling events"
|
||||
echo "export EVENTS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_EVENTS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'ping'; then
|
||||
bashio::log.info "Enabling ping"
|
||||
echo "export PING=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_PING=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling ping"
|
||||
echo "export PING=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_PING=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'version'; then
|
||||
bashio::log.info "Enabling version"
|
||||
echo "export VERSION=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_VERSION=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling version"
|
||||
echo "export VERSION=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_VERSION=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'build'; then
|
||||
bashio::log.info "Enabling build"
|
||||
echo "export BUILD=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_BUILD=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling build"
|
||||
echo "export BUILD=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_BUILD=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'commit'; then
|
||||
bashio::log.info "Enabling commit"
|
||||
echo "export COMMIT=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_COMMIT=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling commit"
|
||||
echo "export COMMIT=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_COMMIT=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'configs'; then
|
||||
bashio::log.info "Enabling configs"
|
||||
echo "export CONFIGS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_CONFIGS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling configs"
|
||||
echo "export CONFIGS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_CONFIGS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'allow_restart'; then
|
||||
bashio::log.info "Enabling allow_restart"
|
||||
echo "export ALLOW_RESTART=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_ALLOW_RESTART=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling allow_restart"
|
||||
echo "export ALLOW_RESTART=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_ALLOW_RESTART=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'distribution'; then
|
||||
bashio::log.info "Enabling distribution"
|
||||
echo "export DISTRIBUTION=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_DISTRIBUTION=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling distribution"
|
||||
echo "export DISTRIBUTION=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_DISTRIBUTION=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'exec'; then
|
||||
bashio::log.info "Enabling exec"
|
||||
echo "export EXEC=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_EXEC=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling exec"
|
||||
echo "export EXEC=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_EXEC=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'grpc'; then
|
||||
bashio::log.info "Enabling grpc"
|
||||
echo "export GRPC=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_GRPC=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling grpc"
|
||||
echo "export GRPC=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_GRPC=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'images'; then
|
||||
bashio::log.info "Enabling images"
|
||||
echo "export IMAGES=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_IMAGES=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling images"
|
||||
echo "export IMAGES=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_IMAGES=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'info'; then
|
||||
bashio::log.info "Enabling info"
|
||||
echo "export INFO=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_INFO=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling info"
|
||||
echo "export INFO=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_INFO=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'networks'; then
|
||||
bashio::log.info "Enabling networks"
|
||||
echo "export NETWORKS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_NETWORKS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling networks"
|
||||
echo "export NETWORKS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_NETWORKS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'node'; then
|
||||
bashio::log.info "Enabling node"
|
||||
echo "export NODE=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_NODE=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling node"
|
||||
echo "export NODE=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_NODE=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'plugins'; then
|
||||
bashio::log.info "Enabling plugins"
|
||||
echo "export PLUGINS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_PLUGINS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling plugins"
|
||||
echo "export PLUGINS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_PLUGINS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'services'; then
|
||||
bashio::log.info "Enabling services"
|
||||
echo "export SERVICES=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SERVICES=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling services"
|
||||
echo "export SERVICES=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SERVICES=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'session'; then
|
||||
bashio::log.info "Enabling session"
|
||||
echo "export SESSION=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SESSION=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling session"
|
||||
echo "export SESSION=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SESSION=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'swarm'; then
|
||||
bashio::log.info "Enabling swarm"
|
||||
echo "export SWARM=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SWARM=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling swarm"
|
||||
echo "export SWARM=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SWARM=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'system'; then
|
||||
bashio::log.info "Enabling system"
|
||||
echo "export SYSTEM=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SYSTEM=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling system"
|
||||
echo "export SYSTEM=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SYSTEM=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'tasks'; then
|
||||
bashio::log.info "Enabling tasks"
|
||||
echo "export TASKS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_TASKS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling tasks"
|
||||
echo "export TASKS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_TASKS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'volumes'; then
|
||||
bashio::log.info "Enabling volumes"
|
||||
echo "export VOLUMES=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_VOLUMES=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling volumes"
|
||||
echo "export VOLUMES=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_VOLUMES=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'auth'; then
|
||||
bashio::log.info "Enabling auth"
|
||||
echo "export AUTH=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_AUTH=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling auth"
|
||||
echo "export AUTH=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_AUTH=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'secrets'; then
|
||||
bashio::log.info "Enabling secrets"
|
||||
echo "export SECRETS=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SECRETS=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling secrets"
|
||||
echo "export SECRETS=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_SECRETS=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
if bashio::var.true 'post'; then
|
||||
bashio::log.info "Enabling post"
|
||||
echo "export POST=1" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_POST=1" >> ${SETTINGS_CONF}
|
||||
else
|
||||
bashio::log.info "Disabling post"
|
||||
echo "export POST=0" >> ${SETTINGS_CONF}
|
||||
echo "export ENABLE_POST=0" >> ${SETTINGS_CONF}
|
||||
fi
|
||||
|
||||
bashio::log.info "Finished settings config, Starting docker-socker-proxy"
|
||||
|
||||
Reference in New Issue
Block a user