mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-09 08:35:05 +02:00
Updated Alpine images
This commit is contained in:
@ -1,38 +1,25 @@
|
||||
FROM alpine:3.11
|
||||
LABEL maintainer="Alexey Pustovalov <alexey.pustovalov@zabbix.com>"
|
||||
|
||||
ARG BUILD_DATE
|
||||
ARG VCS_REF
|
||||
|
||||
ARG APK_FLAGS_COMMON=""
|
||||
ARG APK_FLAGS_PERSISTENT="${APK_FLAGS_COMMON} --clean-protected --no-cache"
|
||||
ARG APK_FLAGS_DEV="${APK_FLAGS_COMMON} --no-cache"
|
||||
ENV 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}-alpine" \
|
||||
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"
|
||||
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"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
-H \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
mkdir -p /etc/zabbix/web && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
apk update && \
|
||||
apk add ${APK_FLAGS_PERSISTENT} \
|
||||
apk add --clean-protected --no-cache \
|
||||
bash \
|
||||
curl \
|
||||
mariadb-client \
|
||||
@ -54,21 +41,24 @@ RUN set -eux && \
|
||||
php7-xmlreader \
|
||||
php7-xmlwriter \
|
||||
supervisor && \
|
||||
rm -rf /etc/php7/php-fpm.d/www.conf && \
|
||||
rm -f /etc/nginx/conf.d/*.conf && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
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}:alpine-${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 && \
|
||||
apk add ${APK_FLAGS_DEV} --virtual build-dependencies \
|
||||
apk add --no-cache --virtual build-dependencies \
|
||||
coreutils \
|
||||
gettext \
|
||||
git && \
|
||||
@ -81,24 +71,28 @@ RUN set -eux && \
|
||||
rm -f conf/zabbix.conf.php && \
|
||||
rm -rf tests && \
|
||||
./locale/make_mo.sh && \
|
||||
chown --quiet -R nginx:nginx /usr/share/zabbix/ && \
|
||||
apk del ${APK_FLAGS_COMMON} --purge --no-network \
|
||||
ln -s "/etc/zabbix/web/zabbix.conf.php" "/usr/share/zabbix/conf/zabbix.conf.php" && \
|
||||
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/php7/ && \
|
||||
chgrp -R 0 /etc/nginx/ /etc/php7/ && \
|
||||
chmod -R g=u /etc/nginx/ /etc/php7/ && \
|
||||
chown --quiet -R zabbix:root /var/log/nginx/ /var/lib/nginx/ && \
|
||||
chgrp -R 0 /var/log/nginx/ /var/lib/nginx/ && \
|
||||
chmod -R g=u /var/log/nginx/ /var/lib/nginx/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
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/php7/php-fpm.conf", "/etc/php7/"]
|
||||
COPY ["conf/etc/php7/conf.d/99-zabbix.ini", "/etc/php7/conf.d/"]
|
||||
COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
ENTRYPOINT ["docker-entrypoint.sh"]
|
||||
|
@ -1,10 +1,10 @@
|
||||
user nginx;
|
||||
#user nginx;
|
||||
worker_processes 5;
|
||||
worker_rlimit_nofile 256000;
|
||||
|
||||
error_log /dev/fd/2 warn;
|
||||
|
||||
pid /var/run/nginx.pid;
|
||||
pid /tmp/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 5120;
|
||||
|
@ -12,7 +12,6 @@
|
||||
; Relative path can also be used. They will be prefixed by:
|
||||
; - the global prefix if it's been set (-p argument)
|
||||
; - /usr otherwise
|
||||
include = /etc/php7/php-fpm.d/*.conf
|
||||
|
||||
;;;;;;;;;;;;;;;;;;
|
||||
; Global Options ;
|
||||
@ -29,7 +28,7 @@ include = /etc/php7/php-fpm.d/*.conf
|
||||
; in a local file.
|
||||
; Note: the default prefix is /var
|
||||
; Default Value: log/php-fpm.log
|
||||
error_log = /var/log/php-fpm.log
|
||||
error_log = /dev/fd/2
|
||||
|
||||
; syslog_facility is used to specify what type of program is logging the
|
||||
; message. This lets syslogd specify that messages from different facilities
|
||||
@ -146,8 +145,8 @@ error_log = /var/log/php-fpm.log
|
||||
; Unix user/group of processes
|
||||
; Note: The user is mandatory. If the group is not set, the default user's group
|
||||
; will be used.
|
||||
user = nginx
|
||||
group = nginx
|
||||
;user = nginx
|
||||
;group = nginx
|
||||
|
||||
; The address on which to accept FastCGI requests.
|
||||
; Valid syntaxes are:
|
||||
@ -161,7 +160,7 @@ group = nginx
|
||||
; (IPv6 and IPv4-mapped) on a specific port;
|
||||
; '/path/to/unix/socket' - to listen on a unix socket.
|
||||
; Note: This value is mandatory.
|
||||
listen = /var/run/php7-fpm.sock
|
||||
listen = /tmp/php-fpm.sock
|
||||
|
||||
; Set listen(2) backlog.
|
||||
; Default Value: 65535 (-1 on FreeBSD and OpenBSD)
|
||||
@ -172,8 +171,8 @@ listen = /var/run/php7-fpm.sock
|
||||
; BSD-derived systems allow connections regardless of permissions.
|
||||
; Default Values: user and group are set as the running user
|
||||
; mode is set to 0660
|
||||
listen.owner = nginx
|
||||
listen.group = nginx
|
||||
;listen.owner = nginx
|
||||
;listen.group = nginx
|
||||
;listen.mode = 0660
|
||||
; When POSIX Access Control Lists are supported you can set them using
|
||||
; these options, value is a comma separated list of user/group names.
|
||||
|
@ -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/php7-fpm.sock;
|
||||
fastcgi_pass unix:/tmp/php-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
|
||||
fastcgi_param SCRIPT_FILENAME $webroot$fastcgi_script_name;
|
||||
|
@ -75,7 +75,7 @@ server {
|
||||
}
|
||||
|
||||
location ~ .php$ {
|
||||
fastcgi_pass unix:/var/run/php7-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