mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-09 08:35:05 +02:00
Updated Ubuntu images
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen 8443 ssl http2;
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
|
@ -229,8 +229,6 @@ prepare_web_server() {
|
||||
else
|
||||
echo "**** Impossible to enable SSL support for Nginx. Certificates are missed."
|
||||
fi
|
||||
|
||||
ln -sf /dev/fd/2 /var/log/nginx/error.log
|
||||
}
|
||||
|
||||
clear_deploy() {
|
||||
|
@ -1,42 +1,31 @@
|
||||
FROM ubuntu:bionic
|
||||
LABEL maintainer="Alexey Pustovalov <alexey.pustovalov@zabbix.com>"
|
||||
|
||||
ARG BUILD_DATE
|
||||
ARG VCS_REF
|
||||
LABEL org.opencontainers.image.title="Zabbix web-interface (Nginx, MySQL)" \
|
||||
org.opencontainers.image.authors="Alexey Pustovalov <alexey.pustovalov@zabbix.com>" \
|
||||
org.opencontainers.image.vendor="Zabbix LLC" \
|
||||
org.opencontainers.image.url="https://zabbix.com/" \
|
||||
org.opencontainers.image.description="Zabbix web-interface based on Nginx web server with MySQL database support" \
|
||||
org.opencontainers.image.licenses="GPL v2.0"
|
||||
|
||||
ARG APT_FLAGS_COMMON="-y"
|
||||
ARG APT_FLAGS_PERSISTENT="${APT_FLAGS_COMMON} --no-install-recommends"
|
||||
ARG APT_FLAGS_DEV="${APT_FLAGS_COMMON} --no-install-recommends"
|
||||
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 TERM=xterm \
|
||||
ZBX_TYPE=frontend ZBX_DB_TYPE=mysql ZBX_OPT_TYPE=nginx
|
||||
|
||||
LABEL org.label-schema.name="zabbix-web-${ZBX_OPT_TYPE}-${ZBX_DB_TYPE}-ubuntu" \
|
||||
org.label-schema.vendor="Zabbix LLC" \
|
||||
org.label-schema.url="https://zabbix.com/" \
|
||||
org.label-schema.description="Zabbix web-interface based on Nginx web server with MySQL database support" \
|
||||
org.label-schema.vcs-ref="${VCS_REF}" \
|
||||
org.label-schema.build-date="${BUILD_DATE}" \
|
||||
org.label-schema.schema-version="1.0" \
|
||||
org.label-schema.license="GPL v2.0"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
apt-get ${APT_FLAGS_COMMON} update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get ${APT_FLAGS_PERSISTENT} install locales gnupg2 ca-certificates && \
|
||||
locale-gen $LC_ALL && \
|
||||
echo "#!/bin/sh\nexit 0" > /usr/sbin/policy-rc.d && \
|
||||
addgroup --system --quiet zabbix && \
|
||||
addgroup --system --gid 1995 --quiet zabbix && \
|
||||
adduser --quiet \
|
||||
--system --disabled-login \
|
||||
--ingroup zabbix \
|
||||
--ingroup zabbix --ingroup root \
|
||||
--uid 1997 \
|
||||
--home /var/lib/zabbix/ \
|
||||
--no-create-home \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
mkdir -p /etc/zabbix/web && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
apt-get ${APT_FLAGS_COMMON} update && \
|
||||
mkdir -p /var/lib/php/session && \
|
||||
apt-get -y update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
|
||||
gpg \
|
||||
dirmngr \
|
||||
gpg-agent \
|
||||
ca-certificates && \
|
||||
NGINX_GPGKEY=573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62; \
|
||||
found=''; \
|
||||
for server in \
|
||||
@ -51,11 +40,12 @@ RUN set -eux && \
|
||||
test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; \
|
||||
DISTRIB_CODENAME=$(/bin/bash -c 'source /etc/lsb-release && echo $DISTRIB_CODENAME') && \
|
||||
echo "deb https://nginx.org/packages/ubuntu/ $DISTRIB_CODENAME nginx" >> /etc/apt/sources.list.d/nginx.list && \
|
||||
apt-get ${APT_FLAGS_COMMON} update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get ${APT_FLAGS_PERSISTENT} install \
|
||||
apt-get -y update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
|
||||
curl \
|
||||
mysql-client \
|
||||
nginx \
|
||||
locales \
|
||||
php7.2-bcmath \
|
||||
php7.2-fpm \
|
||||
php7.2-gd \
|
||||
@ -66,28 +56,28 @@ RUN set -eux && \
|
||||
php7.2-xml \
|
||||
supervisor && \
|
||||
rm -f /etc/nginx/conf.d/*.conf && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get ${APT_FLAGS_COMMON} purge \
|
||||
wget && \
|
||||
apt-get ${APT_FLAGS_COMMON} autoremove && \
|
||||
apt-get ${APT_FLAGS_COMMON} clean && \
|
||||
mkdir -p /var/lib/php7 && \
|
||||
chown --quiet -R www-data:www-data /var/lib/php7 && \
|
||||
rm -rf /var/cache/nginx/* && \
|
||||
rm -rf /var/cache/nginx/ && \
|
||||
rm -f /etc/php/7.2/fpm/pool.d/www.conf && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y purge curl gpg dirmngr gpg-agent && \
|
||||
apt-get -y autoremove && \
|
||||
apt-get -y clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
ENV ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
LABEL org.label-schema.usage="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \
|
||||
org.label-schema.version="${ZBX_VERSION}" \
|
||||
org.label-schema.vcs-url="${ZBX_SOURCES}" \
|
||||
org.label-schema.docker.cmd="docker run --name zabbix-web-${ZBX_OPT_TYPE}-${ZBX_DB_TYPE} --link mysql-server:mysql --link zabbix-server:zabbix-server -p 80:80 -d zabbix-web-${ZBX_OPT_TYPE}-${ZBX_DB_TYPE}:ubuntu-${ZBX_VERSION}"
|
||||
ENV TERM=xterm ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
LABEL org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \
|
||||
org.opencontainers.image.version="${ZBX_VERSION}" \
|
||||
org.opencontainers.image.source="${ZBX_SOURCES}"
|
||||
|
||||
COPY ["conf/etc/", "/etc/"]
|
||||
|
||||
RUN set -eux && \
|
||||
apt-get ${APT_FLAGS_COMMON} update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get ${APT_FLAGS_DEV} install \
|
||||
apt-get -y update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
|
||||
gettext \
|
||||
git && \
|
||||
cd /usr/share/ && \
|
||||
@ -99,6 +89,8 @@ RUN set -eux && \
|
||||
rm -f conf/zabbix.conf.php && \
|
||||
rm -rf tests && \
|
||||
./locale/make_mo.sh && \
|
||||
ln -s "/etc/zabbix/web/zabbix.conf.php" "/usr/share/zabbix/conf/zabbix.conf.php" && \
|
||||
./locale/make_mo.sh && \
|
||||
mkdir -p /var/lib/locales/supported.d/ && \
|
||||
rm -f /var/lib/locales/supported.d/local && \
|
||||
cat /usr/share/zabbix/include/locales.inc.php | grep display | grep true | awk '{$1=$1};1' | \
|
||||
@ -107,26 +99,30 @@ RUN set -eux && \
|
||||
dpkg-reconfigure locales && \
|
||||
find /usr/share/zabbix/locale -name '*.po' | xargs rm -f && \
|
||||
find /usr/share/zabbix/locale -name '*.sh' | xargs rm -f && \
|
||||
chown --quiet -R www-data:www-data /usr/share/zabbix && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get ${APT_FLAGS_COMMON} purge \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /usr/share/zabbix/conf/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /usr/share/zabbix/conf/ && \
|
||||
chmod -R g=u /etc/zabbix/ /usr/share/zabbix/conf/ && \
|
||||
chown --quiet -R zabbix:root /etc/nginx/ /etc/php/7.2/fpm/php-fpm.conf /etc/php/7.2/fpm/pool.d/ && \
|
||||
chgrp -R 0 /etc/nginx/ /etc/php/7.2/fpm/php-fpm.conf /etc/php/7.2/fpm/pool.d/ && \
|
||||
chmod -R g=u /etc/nginx/ /etc/php/7.2/fpm/php-fpm.conf /etc/php/7.2/fpm/pool.d/ && \
|
||||
chown --quiet -R zabbix:root /var/lib/php/session/ && \
|
||||
chgrp -R 0 /var/lib/php/session/ && \
|
||||
chmod -R g=u /var/lib/php/session/ && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y purge \
|
||||
gettext \
|
||||
git && \
|
||||
apt-get ${APT_FLAGS_COMMON} autoremove && \
|
||||
apt-get ${APT_FLAGS_COMMON} clean && \
|
||||
apt-get -y autoremove && \
|
||||
apt-get -y clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
EXPOSE 80/TCP 443/TCP
|
||||
EXPOSE 8080/TCP 8443/TCP
|
||||
|
||||
WORKDIR /usr/share/zabbix
|
||||
|
||||
VOLUME ["/etc/ssl/nginx"]
|
||||
|
||||
COPY ["conf/etc/supervisor/", "/etc/supervisor/"]
|
||||
COPY ["conf/etc/zabbix/nginx.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/nginx_ssl.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/web/zabbix.conf.php", "/etc/zabbix/web/"]
|
||||
COPY ["conf/etc/nginx/nginx.conf", "/etc/nginx/"]
|
||||
COPY ["conf/etc/php/7.2/fpm/conf.d/99-zabbix.ini", "/etc/php/7.2/fpm/conf.d/"]
|
||||
COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
ENTRYPOINT ["docker-entrypoint.sh"]
|
||||
|
@ -1,10 +1,10 @@
|
||||
user www-data;
|
||||
#user nginx;
|
||||
worker_processes 5;
|
||||
#worker_rlimit_nofile 256000;
|
||||
worker_rlimit_nofile 256000;
|
||||
|
||||
error_log /dev/fd/2 warn;
|
||||
error_log /dev/fd/2 error;
|
||||
|
||||
pid /var/run/nginx.pid;
|
||||
pid /tmp/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 5120;
|
||||
@ -21,6 +21,13 @@ http {
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||
|
||||
access_log /dev/fd/1 main;
|
||||
error_log /dev/fd/2 error;
|
||||
|
||||
client_body_temp_path /tmp/client_body 1 2;
|
||||
proxy_temp_path /tmp/proxy 1 2;
|
||||
fastcgi_temp_path /tmp/fastcgi 1 2;
|
||||
uwsgi_temp_path /tmp/uwsgi 1 2;
|
||||
scgi_temp_path /tmp/scgi 1 2;
|
||||
|
||||
client_body_timeout 5m;
|
||||
send_timeout 5m;
|
||||
|
@ -1,9 +0,0 @@
|
||||
max_execution_time=300
|
||||
memory_limit=128M
|
||||
post_max_size=16M
|
||||
upload_max_filesize=2M
|
||||
max_input_time=300
|
||||
always_populate_raw_post_date=-1
|
||||
max_input_vars=10000
|
||||
; date.timezone=Europe/Riga
|
||||
session.save_path=/var/lib/php7
|
9
web-nginx-mysql/ubuntu/conf/etc/php/7.2/fpm/php-fpm.conf
Normal file
9
web-nginx-mysql/ubuntu/conf/etc/php/7.2/fpm/php-fpm.conf
Normal file
@ -0,0 +1,9 @@
|
||||
include=/etc/php/7.2/fpm/pool.d/*.conf
|
||||
|
||||
[global]
|
||||
|
||||
pid = /tmp/php-fpm.pid
|
||||
|
||||
error_log = /dev/fd/2
|
||||
|
||||
daemonize = no
|
@ -0,0 +1,25 @@
|
||||
[zabbix]
|
||||
|
||||
listen = /tmp/php-fpm.sock
|
||||
|
||||
pm = dynamic
|
||||
pm.max_children = 50
|
||||
pm.start_servers = 5
|
||||
pm.min_spare_servers = 5
|
||||
pm.max_spare_servers = 35
|
||||
|
||||
slowlog = /dev/fd/1
|
||||
|
||||
php_admin_value[error_log] = /dev/fd/2
|
||||
php_admin_flag[log_errors] = on
|
||||
|
||||
php_value[session.save_handler] = files
|
||||
php_value[session.save_path] = /var/lib/php/session
|
||||
|
||||
php_value[max_execution_time]= 300
|
||||
php_value[memory_limit]= 128M
|
||||
php_value[post_max_size]= 16M
|
||||
php_value[upload_max_filesize]= 2M
|
||||
php_value[max_input_time]= 300
|
||||
php_value[max_input_vars]= 10000
|
||||
; php_value[date.timezone]= Europe/Riga
|
@ -1,17 +1,17 @@
|
||||
; supervisor config file
|
||||
|
||||
[unix_http_server]
|
||||
file = /var/run/supervisor.sock ; (the path to the socket file)
|
||||
file = /tmp/supervisor.sock ; (the path to the socket file)
|
||||
chmod = 0700 ; sockef file mode (default 0700)
|
||||
username = zbx
|
||||
password = password
|
||||
|
||||
[supervisord]
|
||||
logfile = /dev/stdout ; (main log file;default $CWD/supervisord.log)
|
||||
pidfile = /var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
|
||||
pidfile = /tmp/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
|
||||
childlogdir = /tmp ; ('AUTO' child log dir, default $TEMP)
|
||||
critical = critical
|
||||
user = root
|
||||
;user = zabbix
|
||||
logfile_maxbytes = 0
|
||||
logfile_backupcount = 0
|
||||
loglevel = info
|
||||
@ -23,7 +23,7 @@ loglevel = info
|
||||
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
||||
|
||||
[supervisorctl]
|
||||
serverurl = unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
|
||||
serverurl = unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
|
||||
|
||||
; The [include] section can just contain the "files" setting. This
|
||||
; setting can list multiple files (separated by whitespace or
|
||||
|
@ -1,5 +1,5 @@
|
||||
server {
|
||||
listen 80;
|
||||
listen 8080;
|
||||
server_name zabbix;
|
||||
index index.php;
|
||||
|
||||
@ -51,7 +51,7 @@ server {
|
||||
}
|
||||
|
||||
location ~ .php$ {
|
||||
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
|
||||
fastcgi_pass unix:/tmp/php-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
|
||||
fastcgi_param SCRIPT_FILENAME $webroot$fastcgi_script_name;
|
||||
|
@ -1,5 +1,5 @@
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen 8443 ssl http2;
|
||||
server_name zabbix;
|
||||
server_name_in_redirect off;
|
||||
|
||||
@ -75,7 +75,7 @@ server {
|
||||
}
|
||||
|
||||
location ~ .php$ {
|
||||
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
|
||||
fastcgi_pass unix:/tmp/php-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
|
||||
fastcgi_param SCRIPT_FILENAME $webroot$fastcgi_script_name;
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user