mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-09 00:24:58 +02:00
Updated build script
This commit is contained in:
@ -1,14 +1,34 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:alpine-${ZBX_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} as builder
|
||||
|
||||
FROM alpine:3.12
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
ARG ZBX_SOURCES
|
||||
|
||||
ENV TERM=xterm ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
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"
|
||||
org.opencontainers.image.licenses="GPL v2.0" \
|
||||
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}"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
COPY --from=builder ["/tmp/zabbix-${ZBX_VERSION}/ui", "/usr/share/zabbix"]
|
||||
COPY ["conf/etc/", "/etc/"]
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup --system --gid 1995 zabbix && \
|
||||
adduser --system \
|
||||
@ -50,40 +70,15 @@ RUN set -eux && \
|
||||
rm -rf /etc/php7/php-fpm.d/www.conf && \
|
||||
rm -f /etc/nginx/conf.d/*.conf && \
|
||||
ln -sf /dev/fd/2 /var/lib/nginx/logs/error.log && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
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 --no-cache --virtual build-dependencies \
|
||||
coreutils \
|
||||
gettext \
|
||||
git && \
|
||||
cd /usr/share/ && \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${ZBX_VERSION} --depth 1 --single-branch zabbix-${ZBX_VERSION} && \
|
||||
mkdir /usr/share/zabbix/ && \
|
||||
cp -R /usr/share/zabbix-${ZBX_VERSION}/ui/* /usr/share/zabbix/ && \
|
||||
rm -rf /usr/share/zabbix-${ZBX_VERSION}/ && \
|
||||
cd /usr/share/zabbix/ && \
|
||||
./locale/make_mo.sh && \
|
||||
rm -f conf/zabbix.conf.php conf/maintenance.inc.php conf/zabbix.conf.php.example && \
|
||||
rm -rf tests && \
|
||||
rm -f locale/add_new_language.sh locale/update_po.sh locale/make_mo.sh && \
|
||||
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/modules/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /usr/share/zabbix/modules/ && \
|
||||
chmod -R g=u /etc/zabbix/ /usr/share/zabbix/modules/ && \
|
||||
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/ && \
|
||||
chown --quiet -R zabbix:root /etc/nginx/ /etc/php7/php-fpm.d/ /etc/php7/php-fpm.conf && \
|
||||
chgrp -R 0 /etc/nginx/ /etc/php7/php-fpm.d/ /etc/php7/php-fpm.conf && \
|
||||
chmod -R g=u /etc/nginx/ /etc/php7/php-fpm.d/ /etc/php7/php-fpm.conf && \
|
||||
@ -93,8 +88,6 @@ RUN set -eux && \
|
||||
chown --quiet -R zabbix:root /usr/share/zabbix/include/defines.inc.php && \
|
||||
chgrp -R 0 /usr/share/zabbix/include/defines.inc.php && \
|
||||
chmod -R g=u /usr/share/zabbix/include/defines.inc.php && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
EXPOSE 8080/TCP 8443/TCP
|
||||
|
@ -1,14 +1,34 @@
|
||||
FROM centos:centos8
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:centos-${ZBX_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} as builder
|
||||
|
||||
FROM centos:8
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
ARG ZBX_SOURCES
|
||||
|
||||
ENV TERM=xterm ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
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"
|
||||
org.opencontainers.image.licenses="GPL v2.0" \
|
||||
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}"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
COPY --from=builder ["/tmp/zabbix-${ZBX_VERSION}/ui", "/usr/share/zabbix"]
|
||||
COPY ["conf/etc/", "/etc/"]
|
||||
|
||||
RUN set -eux && \
|
||||
groupadd --system --gid 1995 zabbix && \
|
||||
useradd \
|
||||
@ -22,10 +42,10 @@ RUN set -eux && \
|
||||
mkdir -p /etc/zabbix/web && \
|
||||
mkdir -p /etc/zabbix/web/certs && \
|
||||
mkdir -p /var/lib/php/session && \
|
||||
dnf --quiet makecache && \
|
||||
dnf -y install epel-release && \
|
||||
dnf -y install --setopt=install_weak_deps=False --best --setopt=tsflags=nodocs \
|
||||
curl \
|
||||
dnf -y module enable mysql && \
|
||||
dnf -y module enable php:7.4 nginx:1.18 && \
|
||||
REPOLIST="baseos,appstream,epel" && \
|
||||
INSTALL_PKGS="curl \
|
||||
mysql \
|
||||
nginx \
|
||||
php-bcmath \
|
||||
@ -36,39 +56,21 @@ RUN set -eux && \
|
||||
php-mysqlnd \
|
||||
php-json \
|
||||
php-xml \
|
||||
supervisor && \
|
||||
findutils \
|
||||
glibc-locale-source \
|
||||
supervisor" && \
|
||||
dnf -y install epel-release && \
|
||||
dnf -y install \
|
||||
--disablerepo "*" \
|
||||
--enablerepo "${REPOLIST}" \
|
||||
--setopt=tsflags=nodocs \
|
||||
--setopt=install_weak_deps=False \
|
||||
--best \
|
||||
${INSTALL_PKGS} && \
|
||||
rm -f /etc/nginx/conf.d/*.conf && \
|
||||
rm -f /etc/php-fpm.d/www.conf && \
|
||||
dnf -y clean all && \
|
||||
rm -rf /var/cache/yum /var/lib/yum/yumdb/* /usr/lib/udev/hwdb.d/* && \
|
||||
rm -rf /var/cache/dnf /etc/udev/hwdb.bin /root/.pki
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
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 && \
|
||||
dnf --quiet makecache && \
|
||||
dnf -y install --setopt=install_weak_deps=False --best --setopt=tsflags=nodocs \
|
||||
glibc-locale-source && \
|
||||
dnf -y install --setopt=install_weak_deps=False --best --setopt=tsflags=nodocs \
|
||||
gettext \
|
||||
git && \
|
||||
cd /usr/share/ && \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${ZBX_VERSION} --depth 1 --single-branch zabbix-${ZBX_VERSION} && \
|
||||
mkdir /usr/share/zabbix/ && \
|
||||
cp -R /usr/share/zabbix-${ZBX_VERSION}/ui/* /usr/share/zabbix/ && \
|
||||
rm -rf /usr/share/zabbix-${ZBX_VERSION}/ && \
|
||||
cd /usr/share/zabbix/ && \
|
||||
./locale/make_mo.sh && \
|
||||
rm -f conf/zabbix.conf.php conf/maintenance.inc.php conf/zabbix.conf.php.example && \
|
||||
rm -rf tests && \
|
||||
rm -f locale/add_new_language.sh locale/update_po.sh locale/make_mo.sh && \
|
||||
@ -89,8 +91,9 @@ RUN set -eux && \
|
||||
chown --quiet -R zabbix:root /usr/share/zabbix/include/defines.inc.php && \
|
||||
chgrp -R 0 /usr/share/zabbix/include/defines.inc.php && \
|
||||
chmod -R g=u /usr/share/zabbix/include/defines.inc.php && \
|
||||
dnf -y history undo `dnf -q history | sed -n 3p |column -t | cut -d' ' -f1` && \
|
||||
dnf -y erase glibc-locale-source glibc-langpack-en && \
|
||||
dnf -y remove \
|
||||
findutils \
|
||||
glibc-locale-source && \
|
||||
dnf -y clean all && \
|
||||
rm -rf /var/cache/yum /var/lib/yum/yumdb/* /usr/lib/udev/hwdb.d/* && \
|
||||
rm -rf /var/cache/dnf /etc/udev/hwdb.bin /root/.pki
|
||||
|
@ -138,7 +138,6 @@ The variable is timezone in PHP format. Full list of supported timezones are ava
|
||||
|
||||
The variable is visible Zabbix installation name in right top corner of the web interface.
|
||||
|
||||
|
||||
### `DB_DOUBLE_IEEE754`
|
||||
|
||||
Use IEEE754 compatible value range for 64-bit Numeric (float) history values. Available since 5.0.0. Enabled by default.
|
||||
|
@ -1,14 +1,33 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ol-${ZBX_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} as builder
|
||||
|
||||
FROM oraclelinux:8-slim
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
ARG ZBX_SOURCES
|
||||
|
||||
ENV TERM=xterm ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
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"
|
||||
org.opencontainers.image.licenses="GPL v2.0" \
|
||||
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}"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
COPY --from=builder ["/tmp/zabbix-${ZBX_VERSION}/ui", "/usr/share/zabbix"]
|
||||
COPY ["conf/etc/", "/etc/"]
|
||||
COPY ["conf/etc/yum.repos.d/oracle-epel-ol8.repo", "/etc/yum.repos.d/oracle-epel-ol8.repo"]
|
||||
|
||||
RUN set -eux && \
|
||||
@ -37,46 +56,20 @@ RUN set -eux && \
|
||||
php-mysqlnd \
|
||||
php-json \
|
||||
php-xml \
|
||||
findutils \
|
||||
glibc-locale-source \
|
||||
supervisor" && \
|
||||
microdnf -y --disablerepo="*" --enablerepo="ol8_baseos_latest" \
|
||||
microdnf -y install \
|
||||
--disablerepo="*" \
|
||||
--enablerepo="ol8_baseos_latest" \
|
||||
--enablerepo="ol8_appstream" \
|
||||
--enablerepo="ol8_developer_EPEL" \
|
||||
install --setopt=install_weak_deps=0 --best --nodocs ${INSTALL_PKGS} && \
|
||||
--setopt=install_weak_deps=0 \
|
||||
--best \
|
||||
--nodocs ${INSTALL_PKGS} && \
|
||||
rm -f /etc/nginx/conf.d/*.conf && \
|
||||
rm -f /etc/php-fpm.d/www.conf && \
|
||||
microdnf -y clean all && \
|
||||
rm -rf /var/cache/yum /var/lib/yum/yumdb/* /usr/lib/udev/hwdb.d/* && \
|
||||
rm -rf /var/cache/dnf /etc/udev/hwdb.bin /root/.pki
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
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 && \
|
||||
REPOLIST="ol8_baseos_latest,ol8_appstream,ol8_codeready_builder" && \
|
||||
INSTALL_PKGS="glibc-locale-source \
|
||||
gettext \
|
||||
findutils \
|
||||
git" && \
|
||||
microdnf -y install --setopt=install_weak_deps=0 --best \
|
||||
--nodocs dnf && \
|
||||
dnf -y install --disablerepo "*" --enablerepo "${REPOLIST}" --setopt=install_weak_deps=False --best \
|
||||
--setopt=tsflags=nodocs ${INSTALL_PKGS} && \
|
||||
cd /usr/share/ && \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${ZBX_VERSION} --depth 1 --single-branch zabbix-${ZBX_VERSION} && \
|
||||
mkdir /usr/share/zabbix/ && \
|
||||
cp -R /usr/share/zabbix-${ZBX_VERSION}/ui/* /usr/share/zabbix/ && \
|
||||
rm -rf /usr/share/zabbix-${ZBX_VERSION}/ && \
|
||||
cd /usr/share/zabbix/ && \
|
||||
./locale/make_mo.sh && \
|
||||
rm -f conf/zabbix.conf.php conf/maintenance.inc.php conf/zabbix.conf.php.example && \
|
||||
rm -rf tests && \
|
||||
rm -f locale/add_new_language.sh locale/update_po.sh locale/make_mo.sh && \
|
||||
@ -97,9 +90,10 @@ RUN set -eux && \
|
||||
chown --quiet -R zabbix:root /usr/share/zabbix/include/defines.inc.php && \
|
||||
chgrp -R 0 /usr/share/zabbix/include/defines.inc.php && \
|
||||
chmod -R g=u /usr/share/zabbix/include/defines.inc.php && \
|
||||
dnf -y history undo last && \
|
||||
dnf -y clean all && \
|
||||
microdnf -y remove dnf && \
|
||||
microdnf -y remove \
|
||||
findutils \
|
||||
glibc-locale-source && \
|
||||
microdnf -y clean all && \
|
||||
rm -rf /var/cache/yum /var/lib/yum/yumdb/* /usr/lib/udev/hwdb.d/* && \
|
||||
rm -rf /var/cache/dnf /etc/udev/hwdb.bin /root/.pki
|
||||
|
||||
|
@ -237,7 +237,7 @@ The volume allows to use custom certificates for SAML authentification. The volu
|
||||
|
||||
The `zabbix-web-nginx-mysql` images come in many flavors, each designed for a specific use case.
|
||||
|
||||
## `zabbix-agent2:alpine-<version>`
|
||||
## `zabbix-web-nginx-mysql:alpine-<version>`
|
||||
|
||||
This image is based on the popular [Alpine Linux project](http://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general.
|
||||
|
||||
@ -245,11 +245,11 @@ This variant is highly recommended when final image size being as small as possi
|
||||
|
||||
To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar).
|
||||
|
||||
## `zabbix-agent:ubuntu-<version>`
|
||||
## `zabbix-web-nginx-mysql:ubuntu-<version>`
|
||||
|
||||
This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of.
|
||||
|
||||
## `zabbix-agent:ol-<version>`
|
||||
## `zabbix-web-nginx-mysql:ol-<version>`
|
||||
|
||||
Oracle Linux is an open-source operating system available under the GNU General Public License (GPLv2). Suitable for general purpose or Oracle workloads, it benefits from rigorous testing of more than 128,000 hours per day with real-world workloads and includes unique innovations such as Ksplice for zero-downtime kernel patching, DTrace for real-time diagnostics, the powerful Btrfs file system, and more.
|
||||
|
||||
|
@ -1,14 +1,34 @@
|
||||
# syntax=docker/dockerfile:1
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}.16
|
||||
ARG BUILD_BASE_IMAGE=zabbix-build-mysql:ubuntu-${ZBX_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
FROM ${BUILD_BASE_IMAGE} as builder
|
||||
|
||||
FROM ubuntu:focal
|
||||
|
||||
ARG MAJOR_VERSION
|
||||
ARG ZBX_VERSION
|
||||
ARG ZBX_SOURCES
|
||||
|
||||
ENV TERM=xterm ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
|
||||
|
||||
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"
|
||||
org.opencontainers.image.licenses="GPL v2.0" \
|
||||
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}"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
COPY --from=builder ["/tmp/zabbix-${ZBX_VERSION}/ui", "/usr/share/zabbix"]
|
||||
COPY ["conf/etc/", "/etc/"]
|
||||
|
||||
RUN set -eux && \
|
||||
echo "#!/bin/sh\nexit 101" > /usr/sbin/policy-rc.d && \
|
||||
groupadd --system --gid 1995 zabbix && \
|
||||
@ -44,7 +64,8 @@ RUN set -eux && \
|
||||
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 -y update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends \
|
||||
-o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install \
|
||||
curl \
|
||||
mysql-client \
|
||||
nginx \
|
||||
@ -62,38 +83,11 @@ RUN set -eux && \
|
||||
rm -rf /var/cache/nginx/ && \
|
||||
rm -f /etc/php/7.4/fpm/pool.d/www.conf && \
|
||||
ln -sf /dev/fd/2 /var/log/nginx/error.log && \
|
||||
rm -f /etc/php/7.4/fpm/php-fpm.conf.dpkg-dist && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y purge 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}.16
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
|
||||
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 -y update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
|
||||
gettext \
|
||||
git && \
|
||||
cd /usr/share/ && \
|
||||
git -c advice.detachedHead=false clone ${ZBX_SOURCES} --branch ${ZBX_VERSION} --depth 1 --single-branch zabbix-${ZBX_VERSION} && \
|
||||
mkdir /usr/share/zabbix/ && \
|
||||
cp -R /usr/share/zabbix-${ZBX_VERSION}/ui/* /usr/share/zabbix/ && \
|
||||
rm -rf /usr/share/zabbix-${ZBX_VERSION}/ && \
|
||||
cd /usr/share/zabbix/ && \
|
||||
./locale/make_mo.sh && \
|
||||
rm -f conf/zabbix.conf.php conf/maintenance.inc.php conf/zabbix.conf.php.example && \
|
||||
rm -rf tests && \
|
||||
rm -f locale/add_new_language.sh locale/update_po.sh locale/make_mo.sh && \
|
||||
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" && \
|
||||
mkdir -p /var/lib/locales/supported.d/ && \
|
||||
@ -104,9 +98,9 @@ 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 zabbix:root /etc/zabbix/ /usr/share/zabbix/modules/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /usr/share/zabbix/modules/ && \
|
||||
chmod -R g=u /etc/zabbix/ /usr/share/zabbix/modules/ && \
|
||||
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/ && \
|
||||
chown --quiet -R zabbix:root /etc/nginx/ /etc/php/7.4/fpm/php-fpm.conf /etc/php/7.4/fpm/pool.d/ && \
|
||||
chgrp -R 0 /etc/nginx/ /etc/php/7.4/fpm/php-fpm.conf /etc/php/7.4/fpm/pool.d/ && \
|
||||
chmod -R g=u /etc/nginx/ /etc/php/7.4/fpm/php-fpm.conf /etc/php/7.4/fpm/pool.d/ && \
|
||||
@ -116,9 +110,6 @@ RUN set -eux && \
|
||||
chown --quiet -R zabbix:root /usr/share/zabbix/include/defines.inc.php && \
|
||||
chgrp -R 0 /usr/share/zabbix/include/defines.inc.php && \
|
||||
chmod -R g=u /usr/share/zabbix/include/defines.inc.php && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get -y purge \
|
||||
gettext \
|
||||
git && \
|
||||
apt-get -y autoremove && \
|
||||
apt-get -y clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
Reference in New Issue
Block a user