mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-09 08:35:05 +02:00
Using env variables for zabbix user home and configuration files directory
This commit is contained in:
@ -12,7 +12,8 @@ ARG ZBX_VERSION
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
ENV TERM=xterm \
|
||||
ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES} \
|
||||
ZABBIX_CONF_DIR="/etc/zabbix"
|
||||
|
||||
LABEL org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zabbix.com>" \
|
||||
org.opencontainers.image.description="Zabbix web-interface based on Nginx web server with MySQL database support" \
|
||||
@ -75,9 +76,9 @@ RUN set -eux && \
|
||||
--shell /sbin/nologin \
|
||||
--home /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
mkdir -p /etc/zabbix/web && \
|
||||
mkdir -p /etc/zabbix/web/certs && \
|
||||
mkdir -p ${ZABBIX_CONF_DIR} && \
|
||||
mkdir -p ${ZABBIX_CONF_DIR}/web && \
|
||||
mkdir -p ${ZABBIX_CONF_DIR}/web/certs && \
|
||||
mkdir -p /var/lib/php/session && \
|
||||
rm -rf /etc/php83/php-fpm.d/www.conf && \
|
||||
rm -f /etc/nginx/http.d/*.conf && \
|
||||
@ -89,11 +90,11 @@ RUN set -eux && \
|
||||
rm -f locale/add_new_language.sh locale/update_po.sh locale/make_mo.sh && \
|
||||
find /usr/share/zabbix/locale -name '*.po' | xargs rm -f && \
|
||||
find /usr/share/zabbix/locale -name '*.sh' | xargs rm -f && \
|
||||
ln -s "/etc/zabbix/web/zabbix.conf.php" "/usr/share/zabbix/conf/zabbix.conf.php" && \
|
||||
ln -s "/etc/zabbix/web/maintenance.inc.php" "/usr/share/zabbix/conf/maintenance.inc.php" && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
chmod -R g=u /etc/zabbix/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
ln -s "${ZABBIX_CONF_DIR}/web/zabbix.conf.php" "/usr/share/zabbix/conf/zabbix.conf.php" && \
|
||||
ln -s "${ZABBIX_CONF_DIR}/web/maintenance.inc.php" "/usr/share/zabbix/conf/maintenance.inc.php" && \
|
||||
chown --quiet -R zabbix:root ${ZABBIX_CONF_DIR}/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
chgrp -R 0 ${ZABBIX_CONF_DIR}/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
chmod -R g=u ${ZABBIX_CONF_DIR}/ /usr/share/zabbix/include/defines.inc.php /usr/share/zabbix/modules/ && \
|
||||
chown --quiet -R zabbix:root /etc/nginx/ /etc/php83/php-fpm.d/ /etc/php83/php-fpm.conf && \
|
||||
chgrp -R 0 /etc/nginx/ /etc/php83/php-fpm.d/ /etc/php83/php-fpm.conf && \
|
||||
chmod -R g=u /etc/nginx/ /etc/php83/php-fpm.d/ /etc/php83/php-fpm.conf && \
|
||||
|
@ -22,8 +22,6 @@ fi
|
||||
: ${DAEMON_USER:="nginx"}
|
||||
|
||||
# Default directories
|
||||
# Configuration files directory
|
||||
ZABBIX_ETC_DIR="/etc/zabbix"
|
||||
# Web interface www-root directory
|
||||
ZABBIX_WWW_ROOT="/usr/share/zabbix"
|
||||
# Nginx main configuration file
|
||||
@ -140,21 +138,21 @@ prepare_web_server() {
|
||||
NGINX_SSL_CONFIG="/etc/ssl/nginx"
|
||||
|
||||
if [ ! -f "/proc/net/if_inet6" ]; then
|
||||
sed -i '/listen \[::\]/d' "$ZABBIX_ETC_DIR/nginx.conf"
|
||||
sed -i '/listen \[::\]/d' "$ZABBIX_ETC_DIR/nginx_ssl.conf"
|
||||
sed -i '/listen \[::\]/d' "$ZABBIX_CONF_DIR/nginx.conf"
|
||||
sed -i '/listen \[::\]/d' "$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
fi
|
||||
|
||||
echo "** Adding Zabbix virtual host (HTTP)"
|
||||
if [ -f "$ZABBIX_ETC_DIR/nginx.conf" ]; then
|
||||
ln -sfT "$ZABBIX_ETC_DIR/nginx.conf" "$NGINX_CONFD_DIR/nginx.conf"
|
||||
if [ -f "$ZABBIX_CONF_DIR/nginx.conf" ]; then
|
||||
ln -sfT "$ZABBIX_CONF_DIR/nginx.conf" "$NGINX_CONFD_DIR/nginx.conf"
|
||||
else
|
||||
echo "**** Impossible to enable HTTP virtual host"
|
||||
fi
|
||||
|
||||
if [ -f "$NGINX_SSL_CONFIG/ssl.crt" ] && [ -f "$NGINX_SSL_CONFIG/ssl.key" ] && [ -f "$NGINX_SSL_CONFIG/dhparam.pem" ]; then
|
||||
echo "** Enable SSL support for Nginx"
|
||||
if [ -f "$ZABBIX_ETC_DIR/nginx_ssl.conf" ]; then
|
||||
ln -sfT "$ZABBIX_ETC_DIR/nginx_ssl.conf" "$NGINX_CONFD_DIR/nginx_ssl.conf"
|
||||
if [ -f "$ZABBIX_CONF_DIR/nginx_ssl.conf" ]; then
|
||||
ln -sfT "$ZABBIX_CONF_DIR/nginx_ssl.conf" "$NGINX_CONFD_DIR/nginx_ssl.conf"
|
||||
else
|
||||
echo "**** Impossible to enable HTTPS virtual host"
|
||||
fi
|
||||
@ -239,21 +237,21 @@ prepare_zbx_web_config() {
|
||||
FCGI_READ_TIMEOUT=$(expr ${ZBX_MAXEXECUTIONTIME} + 1)
|
||||
sed -i \
|
||||
-e "s/{FCGI_READ_TIMEOUT}/${FCGI_READ_TIMEOUT}/g" \
|
||||
"$ZABBIX_ETC_DIR/nginx.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
: ${HTTP_INDEX_FILE:="index.php"}
|
||||
sed -i \
|
||||
-e "s/{HTTP_INDEX_FILE}/${HTTP_INDEX_FILE}/g" \
|
||||
"$ZABBIX_ETC_DIR/nginx.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
|
||||
if [ -f "$ZABBIX_ETC_DIR/nginx_ssl.conf" ]; then
|
||||
if [ -f "$ZABBIX_CONF_DIR/nginx_ssl.conf" ]; then
|
||||
sed -i \
|
||||
-e "s/{FCGI_READ_TIMEOUT}/${FCGI_READ_TIMEOUT}/g" \
|
||||
"$ZABBIX_ETC_DIR/nginx_ssl.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
|
||||
sed -i \
|
||||
-e "s/{HTTP_INDEX_FILE}/${HTTP_INDEX_FILE}/g" \
|
||||
"$ZABBIX_ETC_DIR/nginx_ssl.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
fi
|
||||
|
||||
: ${ENABLE_WEB_ACCESS_LOG:="true"}
|
||||
@ -264,10 +262,10 @@ prepare_zbx_web_config() {
|
||||
"$NGINX_CONF_FILE"
|
||||
sed -ri \
|
||||
-e 's!^(\s*access_log).+\;!\1 off\;!g' \
|
||||
"$ZABBIX_ETC_DIR/nginx.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx.conf"
|
||||
sed -ri \
|
||||
-e 's!^(\s*access_log).+\;!\1 off\;!g' \
|
||||
"$ZABBIX_ETC_DIR/nginx_ssl.conf"
|
||||
"$ZABBIX_CONF_DIR/nginx_ssl.conf"
|
||||
fi
|
||||
|
||||
: ${EXPOSE_WEB_SERVER_INFO:="on"}
|
||||
|
Reference in New Issue
Block a user