mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-01-03 04:09:31 +01:00
Updated Alpine images
This commit is contained in:
commit
0c6b2f0d48
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
zbx_env/
|
||||
zbx_env*/
|
||||
|
@ -10,10 +10,10 @@ LABEL org.opencontainers.image.title="Zabbix agent" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
@ -21,7 +21,6 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix && \
|
||||
mkdir -p /var/lib/zabbix/enc && \
|
||||
mkdir -p /var/lib/zabbix/modules && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
apk add --no-cache --clean-protected \
|
||||
tini \
|
||||
bash \
|
||||
@ -81,6 +80,9 @@ RUN set -eux && \
|
||||
chown -R zabbix:zabbix /etc/zabbix/ && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -95,6 +97,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_agentd", "--foreground", "-c", "/etc/zabbix/zabbix_agentd.conf"]
|
||||
|
@ -38,7 +38,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -98,7 +97,6 @@ services:
|
||||
env_file:
|
||||
- .env_prx
|
||||
- .env_prx_sqlite3
|
||||
user: root
|
||||
depends_on:
|
||||
- zabbix-java-gateway
|
||||
- zabbix-snmptraps
|
||||
@ -150,7 +148,6 @@ services:
|
||||
- .env_db_mysql_proxy
|
||||
- .env_prx
|
||||
- .env_prx_mysql
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -173,8 +170,8 @@ services:
|
||||
zabbix-web-apache-mysql:
|
||||
image: zabbix/zabbix-web-apache-mysql:alpine-trunk
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "80:8080"
|
||||
- "443:8443"
|
||||
links:
|
||||
- mysql-server:mysql-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -196,12 +193,11 @@ services:
|
||||
secrets:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -227,8 +223,8 @@ services:
|
||||
zabbix-web-nginx-mysql:
|
||||
image: zabbix/zabbix-web-nginx-mysql:alpine-trunk
|
||||
ports:
|
||||
- "8081:80"
|
||||
- "8443:443"
|
||||
- "8081:8080"
|
||||
- "8443:8443"
|
||||
links:
|
||||
- mysql-server:mysql-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -250,12 +246,11 @@ services:
|
||||
secrets:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -302,7 +297,6 @@ services:
|
||||
mode: global
|
||||
env_file:
|
||||
- .env_agent
|
||||
user: root
|
||||
privileged: true
|
||||
pid: "host"
|
||||
networks:
|
||||
@ -332,7 +326,6 @@ services:
|
||||
memory: 256M
|
||||
env_file:
|
||||
- .env_java
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
aliases:
|
||||
@ -348,7 +341,7 @@ services:
|
||||
zabbix-snmptraps:
|
||||
image: zabbix/zabbix-snmptraps:alpine-trunk
|
||||
ports:
|
||||
- "162:162/udp"
|
||||
- "162:1162/udp"
|
||||
volumes:
|
||||
- ./zbx_env/var/lib/zabbix/snmptraps:/var/lib/zabbix/snmptraps:rw
|
||||
deploy:
|
||||
@ -359,7 +352,6 @@ services:
|
||||
reservations:
|
||||
cpus: '0.25'
|
||||
memory: 128M
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_frontend:
|
||||
aliases:
|
||||
@ -383,7 +375,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
|
@ -42,7 +42,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -106,7 +105,6 @@ services:
|
||||
env_file:
|
||||
- .env_prx
|
||||
- .env_prx_sqlite3
|
||||
user: root
|
||||
depends_on:
|
||||
- zabbix-java-gateway
|
||||
- zabbix-snmptraps
|
||||
@ -162,7 +160,6 @@ services:
|
||||
- .env_db_mysql_proxy
|
||||
- .env_prx
|
||||
- .env_prx_mysql
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -189,8 +186,8 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-web-apache-mysql:alpine-local
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "80:8080"
|
||||
- "443:8443"
|
||||
links:
|
||||
- mysql-server:mysql-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -212,12 +209,11 @@ services:
|
||||
secrets:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -247,8 +243,8 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-web-nginx-mysql:alpine-local
|
||||
ports:
|
||||
- "8081:80"
|
||||
- "8443:443"
|
||||
- "8081:8080"
|
||||
- "8443:8443"
|
||||
links:
|
||||
- mysql-server:mysql-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -270,12 +266,11 @@ services:
|
||||
secrets:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -326,7 +321,6 @@ services:
|
||||
mode: global
|
||||
env_file:
|
||||
- .env_agent
|
||||
user: root
|
||||
privileged: true
|
||||
pid: "host"
|
||||
networks:
|
||||
@ -360,7 +354,6 @@ services:
|
||||
memory: 256M
|
||||
env_file:
|
||||
- .env_java
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
aliases:
|
||||
@ -380,7 +373,7 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-snmptraps:alpine-local
|
||||
ports:
|
||||
- "162:162/udp"
|
||||
- "162:1162/udp"
|
||||
volumes:
|
||||
- ./zbx_env/var/lib/zabbix/snmptraps:/var/lib/zabbix/snmptraps:rw
|
||||
deploy:
|
||||
@ -391,7 +384,6 @@ services:
|
||||
reservations:
|
||||
cpus: '0.25'
|
||||
memory: 128M
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_frontend:
|
||||
aliases:
|
||||
@ -415,7 +407,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
|
@ -37,7 +37,6 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-java-gateway
|
||||
@ -97,7 +96,6 @@ services:
|
||||
env_file:
|
||||
- .env_prx
|
||||
- .env_prx_sqlite3
|
||||
user: root
|
||||
depends_on:
|
||||
- zabbix-java-gateway
|
||||
- zabbix-snmptraps
|
||||
@ -153,7 +151,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -176,8 +173,8 @@ services:
|
||||
zabbix-web-apache-pgsql:
|
||||
image: zabbix/zabbix-web-apache-pgsql:alpine-trunk
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "80:8080"
|
||||
- "443:8443"
|
||||
links:
|
||||
- postgres-server:postgres-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -199,12 +196,11 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -230,8 +226,8 @@ services:
|
||||
zabbix-web-nginx-pgsql:
|
||||
image: zabbix/zabbix-web-nginx-pgsql:alpine-trunk
|
||||
ports:
|
||||
- "8081:80"
|
||||
- "8443:443"
|
||||
- "8081:8080"
|
||||
- "8443:80443"
|
||||
links:
|
||||
- postgres-server:postgres-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -253,12 +249,11 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -305,7 +300,6 @@ services:
|
||||
mode: global
|
||||
env_file:
|
||||
- .env_agent
|
||||
user: root
|
||||
privileged: true
|
||||
pid: "host"
|
||||
networks:
|
||||
@ -335,7 +329,6 @@ services:
|
||||
memory: 256M
|
||||
env_file:
|
||||
- .env_java
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
aliases:
|
||||
@ -351,7 +344,7 @@ services:
|
||||
zabbix-snmptraps:
|
||||
image: zabbix/zabbix-snmptraps:alpine-trunk
|
||||
ports:
|
||||
- "162:162/udp"
|
||||
- "162:1162/udp"
|
||||
volumes:
|
||||
- ./zbx_env/var/lib/zabbix/snmptraps:/var/lib/zabbix/snmptraps:rw
|
||||
deploy:
|
||||
@ -362,7 +355,6 @@ services:
|
||||
reservations:
|
||||
cpus: '0.25'
|
||||
memory: 128M
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_frontend:
|
||||
aliases:
|
||||
@ -386,7 +378,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
@ -404,7 +395,6 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
|
@ -41,7 +41,6 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-java-gateway
|
||||
@ -105,7 +104,6 @@ services:
|
||||
env_file:
|
||||
- .env_prx
|
||||
- .env_prx_sqlite3
|
||||
user: root
|
||||
depends_on:
|
||||
- zabbix-java-gateway
|
||||
- zabbix-snmptraps
|
||||
@ -165,7 +163,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- mysql-server
|
||||
- zabbix-java-gateway
|
||||
@ -193,8 +190,8 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-web-apache-pgsql:alpine-local
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "80:8080"
|
||||
- "443:8443"
|
||||
links:
|
||||
- postgres-server:postgres-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -216,12 +213,11 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -251,8 +247,8 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-web-nginx-pgsql:alpine-local
|
||||
ports:
|
||||
- "8081:80"
|
||||
- "8443:443"
|
||||
- "8081:8080"
|
||||
- "8443:8443"
|
||||
links:
|
||||
- postgres-server:postgres-server
|
||||
- zabbix-server:zabbix-server
|
||||
@ -274,12 +270,11 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
depends_on:
|
||||
- postgres-server
|
||||
- zabbix-server
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost"]
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@ -330,7 +325,6 @@ services:
|
||||
mode: global
|
||||
env_file:
|
||||
- .env_agent
|
||||
user: root
|
||||
privileged: true
|
||||
pid: "host"
|
||||
networks:
|
||||
@ -364,7 +358,6 @@ services:
|
||||
memory: 256M
|
||||
env_file:
|
||||
- .env_java
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
aliases:
|
||||
@ -384,7 +377,7 @@ services:
|
||||
- alpine:3.10
|
||||
image: zabbix-snmptraps:alpine-local
|
||||
ports:
|
||||
- "162:162/udp"
|
||||
- "162:1162/udp"
|
||||
volumes:
|
||||
- ./zbx_env/var/lib/zabbix/snmptraps:/var/lib/zabbix/snmptraps:rw
|
||||
deploy:
|
||||
@ -395,7 +388,6 @@ services:
|
||||
reservations:
|
||||
cpus: '0.25'
|
||||
memory: 128M
|
||||
user: root
|
||||
networks:
|
||||
zbx_net_frontend:
|
||||
aliases:
|
||||
@ -419,7 +411,6 @@ services:
|
||||
- MYSQL_USER
|
||||
- MYSQL_PASSWORD
|
||||
- MYSQL_ROOT_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
@ -437,7 +428,6 @@ services:
|
||||
secrets:
|
||||
- POSTGRES_USER
|
||||
- POSTGRES_PASSWORD
|
||||
user: root
|
||||
stop_grace_period: 1m
|
||||
networks:
|
||||
zbx_net_backend:
|
||||
|
@ -10,14 +10,13 @@ LABEL org.opencontainers.image.title="Zabbix Java Gateway" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
apk add --clean-protected --no-cache \
|
||||
bash \
|
||||
openjdk8-jre-base && \
|
||||
@ -65,6 +64,9 @@ RUN set -eux && \
|
||||
rm -rf /usr/sbin/zabbix_java/lib/*.xml && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -81,6 +83,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_java_gateway"]
|
||||
|
@ -10,10 +10,10 @@ LABEL org.opencontainers.image.title="Zabbix proxy (MySQL)" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
@ -28,7 +28,6 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix/ssl/certs && \
|
||||
mkdir -p /var/lib/zabbix/ssl/keys && \
|
||||
mkdir -p /var/lib/zabbix/ssl/ssl_ca && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
mkdir -p /usr/share/doc/zabbix-proxy-mysql && \
|
||||
apk add --clean-protected --no-cache \
|
||||
tini \
|
||||
@ -108,12 +107,14 @@ RUN set -eux && \
|
||||
cp src/zabbix_get/zabbix_get /usr/bin/zabbix_get && \
|
||||
cp src/zabbix_sender/zabbix_sender /usr/bin/zabbix_sender && \
|
||||
cp conf/zabbix_proxy.conf /etc/zabbix/zabbix_proxy.conf && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
cat database/mysql/schema.sql > database/mysql/create.sql && \
|
||||
gzip database/mysql/create.sql && \
|
||||
cp database/mysql/create.sql.gz /usr/share/doc/zabbix-proxy-mysql/ && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -129,6 +130,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_proxy", "--foreground", "-c", "/etc/zabbix/zabbix_proxy.conf"]
|
||||
|
@ -10,10 +10,10 @@ LABEL org.opencontainers.image.title="Zabbix proxy (SQLite3)" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
mkdir -p /etc/zabbix && \
|
||||
@ -28,7 +28,6 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix/ssl/certs && \
|
||||
mkdir -p /var/lib/zabbix/ssl/keys && \
|
||||
mkdir -p /var/lib/zabbix/ssl/ssl_ca && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
apk add --clean-protected --no-cache \
|
||||
tini \
|
||||
bash \
|
||||
@ -107,9 +106,11 @@ RUN set -eux && \
|
||||
cp src/zabbix_get/zabbix_get /usr/bin/zabbix_get && \
|
||||
cp src/zabbix_sender/zabbix_sender /usr/bin/zabbix_sender && \
|
||||
cp conf/zabbix_proxy.conf /etc/zabbix/zabbix_proxy.conf && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -125,6 +126,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_proxy", "--foreground", "-c", "/etc/zabbix/zabbix_proxy.conf"]
|
||||
|
@ -10,10 +10,10 @@ LABEL org.opencontainers.image.title="Zabbix server (MySQL)" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
adduser zabbix dialout && \
|
||||
@ -31,7 +31,6 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix/ssl/certs && \
|
||||
mkdir -p /var/lib/zabbix/ssl/keys && \
|
||||
mkdir -p /var/lib/zabbix/ssl/ssl_ca && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
mkdir -p /usr/share/doc/zabbix-server-mysql && \
|
||||
apk add --clean-protected --no-cache \
|
||||
tini \
|
||||
@ -113,7 +112,6 @@ RUN set -eux && \
|
||||
cp src/zabbix_get/zabbix_get /usr/bin/zabbix_get && \
|
||||
cp src/zabbix_sender/zabbix_sender /usr/bin/zabbix_sender && \
|
||||
cp conf/zabbix_server.conf /etc/zabbix/zabbix_server.conf && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
cat database/mysql/schema.sql > database/mysql/create.sql && \
|
||||
cat database/mysql/images.sql >> database/mysql/create.sql && \
|
||||
cat database/mysql/data.sql >> database/mysql/create.sql && \
|
||||
@ -121,6 +119,9 @@ RUN set -eux && \
|
||||
cp database/mysql/create.sql.gz /usr/share/doc/zabbix-server-mysql/ && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -137,6 +138,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_server", "--foreground", "-c", "/etc/zabbix/zabbix_server.conf"]
|
||||
|
@ -10,10 +10,10 @@ LABEL org.opencontainers.image.title="Zabbix server (PostgreSQL)" \
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-D -G zabbix -G root \
|
||||
-u 1997 \
|
||||
-h /var/lib/zabbix/ \
|
||||
zabbix && \
|
||||
adduser zabbix dialout && \
|
||||
@ -31,7 +31,6 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix/ssl/certs && \
|
||||
mkdir -p /var/lib/zabbix/ssl/keys && \
|
||||
mkdir -p /var/lib/zabbix/ssl/ssl_ca && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
mkdir -p /usr/share/doc/zabbix-server-postgresql && \
|
||||
apk add --clean-protected --no-cache \
|
||||
tini \
|
||||
@ -114,7 +113,6 @@ RUN set -eux && \
|
||||
cp src/zabbix_get/zabbix_get /usr/bin/zabbix_get && \
|
||||
cp src/zabbix_sender/zabbix_sender /usr/bin/zabbix_sender && \
|
||||
cp conf/zabbix_server.conf /etc/zabbix/zabbix_server.conf && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix && \
|
||||
cat database/postgresql/schema.sql > database/postgresql/create.sql && \
|
||||
cat database/postgresql/images.sql >> database/postgresql/create.sql && \
|
||||
cat database/postgresql/data.sql >> database/postgresql/create.sql && \
|
||||
@ -123,6 +121,9 @@ RUN set -eux && \
|
||||
cp database/postgresql/timescaledb.sql /usr/share/doc/zabbix-server-postgresql/ && \
|
||||
cd /tmp/ && \
|
||||
rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
|
||||
chown --quiet -R zabbix:root /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chgrp -R 0 /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
chmod -R g=u /etc/zabbix/ /var/lib/zabbix/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
@ -139,6 +140,6 @@ COPY ["docker-entrypoint.sh", "/usr/bin/"]
|
||||
|
||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
USER zabbix
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/sbin/zabbix_server", "--foreground", "-c", "/etc/zabbix/zabbix_server.conf"]
|
||||
|
@ -1,8 +1,5 @@
|
||||
FROM alpine:3.11
|
||||
|
||||
ARG APK_FLAGS_PERSISTENT="--clean-protected --no-cache"
|
||||
ARG APK_FLAGS_DEV="--no-cache"
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
ARG ZBX_VERSION=${MAJOR_VERSION}
|
||||
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
|
||||
@ -25,16 +22,17 @@ STOPSIGNAL SIGTERM
|
||||
COPY ["snmptrapfmt_1.14+nmu1ubuntu2.tar.gz", "/tmp/"]
|
||||
|
||||
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/ \
|
||||
zabbix && \
|
||||
apk update && \
|
||||
apk add ${APK_FLAGS_PERSISTENT} \
|
||||
apk add --clean-protected --no-cache \
|
||||
net-snmp \
|
||||
supervisor && \
|
||||
apk add ${APK_FLAGS_DEV} --virtual build-dependencies \
|
||||
apk add --no-cache --virtual build-dependencies \
|
||||
alpine-sdk \
|
||||
autoconf \
|
||||
automake \
|
||||
@ -43,11 +41,11 @@ RUN set -eux && \
|
||||
mkdir -p /var/lib/zabbix && \
|
||||
mkdir -p /var/lib/zabbix/snmptraps && \
|
||||
mkdir -p /var/lib/zabbix/mibs && \
|
||||
chown --quiet -R zabbix:root /var/lib/zabbix && \
|
||||
cd /tmp/ && \
|
||||
tar -zxvf snmptrapfmt_1.14+nmu1ubuntu2.tar.gz && \
|
||||
cd /tmp/snmptrapfmt-1.14+nmu1ubuntu1/ && \
|
||||
patch -p1 < ./patches/makefile.patch && \
|
||||
patch -p1 < ./patches/pid_location.patch && \
|
||||
make -j"$(nproc)" -s && \
|
||||
cp snmptrapfmthdlr /usr/sbin/snmptrapfmthdlr && \
|
||||
cp snmptrapfmt /usr/sbin/snmptrapfmt && \
|
||||
@ -61,11 +59,14 @@ RUN set -eux && \
|
||||
"/etc/snmp/snmptrapfmt.conf" && \
|
||||
rm -rf /tmp/snmptrapfmt_1.14+nmu1ubuntu2.tar.gz && \
|
||||
rm -rf /tmp/snmptrapfmt-1.14+nmu1ubuntu1/ && \
|
||||
chown --quiet -R zabbix:root /etc/snmp/ /var/lib/zabbix/ /var/tmp/ /var/run/ && \
|
||||
chgrp -R 0 /etc/snmp/ /var/lib/zabbix/ /var/tmp/ /var/run/ && \
|
||||
chmod -R g=u /etc/snmp/ /var/lib/zabbix/ /var/tmp/ /var/run/ && \
|
||||
apk del --purge --no-network \
|
||||
build-dependencies && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
EXPOSE 162/UDP
|
||||
EXPOSE 1162/UDP
|
||||
|
||||
WORKDIR /var/lib/zabbix/snmptraps/
|
||||
|
||||
@ -74,4 +75,6 @@ VOLUME ["/var/lib/zabbix/snmptraps", "/var/lib/zabbix/mibs"]
|
||||
COPY ["conf/etc/supervisor/", "/etc/supervisor/"]
|
||||
COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"]
|
||||
|
||||
USER 1997
|
||||
|
||||
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/supervisord.conf"]
|
||||
|
@ -17,7 +17,7 @@ stdout_logfile = /dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
|
||||
[program:snmptrapd]
|
||||
command = /usr/sbin/%(program_name)s -m '+ALL' -M /usr/share/snmp/mibs/:/var/lib/zabbix/mibs -f -n -Lo -p /var/run/snmptrapd.pid -C -c /etc/snmp/%(program_name)s.conf
|
||||
command = /usr/sbin/%(program_name)s -m '+ALL' -M /usr/share/snmp/mibs/:/var/lib/zabbix/mibs -f -n -Lo -p /tmp/snmptrapd.pid -C -c /etc/snmp/%(program_name)s.conf udp:0.0.0.0:1162
|
||||
auto_start = true
|
||||
autorestart = true
|
||||
priority = 100
|
||||
|
@ -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
|
||||
@ -33,3 +33,4 @@ serverurl = unix:///var/run/supervisor.sock ; use a unix:// URL for a unix sock
|
||||
|
||||
[include]
|
||||
files = /etc/supervisor/conf.d/*.conf
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -4,22 +4,21 @@ LABEL org.opencontainers.image.title="Zabbix web-interface (Apache, 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="abbix web-interface based on Apache2 web server with MySQL database support" \
|
||||
org.opencontainers.image.description="Zabbix web-interface based on Apache2 web server with MySQL database support" \
|
||||
org.opencontainers.image.licenses="GPL v2.0"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-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 add --clean-protected --no-cache \
|
||||
apache2 \
|
||||
bash \
|
||||
@ -49,9 +48,10 @@ RUN set -eux && \
|
||||
-e 's!^(\s*ErrorLog)\s+\S+!\1 /proc/self/fd/2!g' \
|
||||
"/etc/apache2/httpd.conf" && \
|
||||
sed -ri \
|
||||
-e 's!^(\s*PidFile)\s+\S+!\1 "/var/run/httpd.pid"!g' \
|
||||
-e 's!^(\s*PidFile)\s+\S+!\1 "/tmp/httpd.pid"!g' \
|
||||
"/etc/apache2/conf.d/mpm.conf" && \
|
||||
rm -f "/var/run/apache2/apache2.pid" && \
|
||||
sed -i 's/Listen 80/Listen 8080/g' /etc/apache2/httpd.conf && \
|
||||
rm -rf "/var/run/apache2/" && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
@ -64,6 +64,8 @@ LABEL org.opencontainers.image.documentation="https://www.zabbix.com/documentati
|
||||
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 \
|
||||
gettext \
|
||||
@ -78,22 +80,26 @@ RUN set -eux && \
|
||||
rm -rf tests && \
|
||||
./locale/make_mo.sh && \
|
||||
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/apache2/ /etc/php7/ && \
|
||||
chgrp -R 0 /etc/apache2/ /etc/php7/ && \
|
||||
chmod -R g=u /etc/apache2/ /etc/php7/ && \
|
||||
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/apache2"]
|
||||
|
||||
COPY ["conf/etc/zabbix/apache.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/apache_ssl.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/web/zabbix.conf.php", "/etc/zabbix/web/"]
|
||||
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"]
|
||||
|
||||
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]
|
||||
|
@ -6,4 +6,3 @@ max_input_time=300
|
||||
; always_populate_raw_post_data=-1
|
||||
max_input_vars=10000
|
||||
; date.timezone=Europe/Riga
|
||||
; session.save_path=/var/lib/php5
|
||||
|
@ -1,4 +1,4 @@
|
||||
<VirtualHost *:80>
|
||||
<VirtualHost *:8080>
|
||||
DocumentRoot /usr/share/zabbix/
|
||||
ServerName zabbix
|
||||
DirectoryIndex index.php
|
||||
|
@ -1,10 +1,10 @@
|
||||
LoadModule ssl_module modules/mod_ssl.so
|
||||
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
|
||||
|
||||
Listen 443
|
||||
Listen 8443
|
||||
|
||||
<IfModule mod_ssl.c>
|
||||
<VirtualHost *:443>
|
||||
<VirtualHost *:8443>
|
||||
SSLEngine on
|
||||
|
||||
DocumentRoot /usr/share/zabbix/
|
||||
|
@ -121,7 +121,7 @@ update_config_var() {
|
||||
}
|
||||
|
||||
# Check prerequisites for MySQL database
|
||||
check_variables_mysql() {
|
||||
check_variables() {
|
||||
: ${DB_SERVER_HOST:="mysql-server"}
|
||||
: ${DB_SERVER_PORT:="3306"}
|
||||
USE_DB_ROOT_USER=false
|
||||
@ -156,7 +156,7 @@ check_variables_mysql() {
|
||||
DB_SERVER_DBNAME=${MYSQL_DATABASE:-"zabbix"}
|
||||
}
|
||||
|
||||
check_db_connect_mysql() {
|
||||
check_db_connect() {
|
||||
echo "********************"
|
||||
echo "* DB_SERVER_HOST: ${DB_SERVER_HOST}"
|
||||
echo "* DB_SERVER_PORT: ${DB_SERVER_PORT}"
|
||||
@ -180,17 +180,7 @@ check_db_connect_mysql() {
|
||||
done
|
||||
}
|
||||
|
||||
mysql_query() {
|
||||
query=$1
|
||||
local result=""
|
||||
|
||||
result=$(mysql --silent --skip-column-names -h ${DB_SERVER_HOST} -P ${DB_SERVER_PORT} \
|
||||
-u ${DB_SERVER_ROOT_USER} --password="${DB_SERVER_ROOT_PASS}" -e "$query")
|
||||
|
||||
echo $result
|
||||
}
|
||||
|
||||
prepare_web_server_apache() {
|
||||
prepare_web_server() {
|
||||
APACHE_SITES_DIR=/etc/apache2/conf.d
|
||||
|
||||
echo "** Adding Zabbix virtual host (HTTP)"
|
||||
@ -257,18 +247,34 @@ prepare_zbx_web_config() {
|
||||
prepare_web() {
|
||||
echo "** Preparing Zabbix web-interface"
|
||||
|
||||
check_variables_mysql
|
||||
check_db_connect_mysql
|
||||
prepare_web_server_apache
|
||||
check_variables
|
||||
check_db_connect
|
||||
prepare_web_server
|
||||
prepare_zbx_web_config
|
||||
}
|
||||
|
||||
|
||||
#################################################
|
||||
|
||||
if [ "$1" == '/usr/sbin/httpd' ]; then
|
||||
prepare_web
|
||||
echo "** Deploying Zabbix web-interface (Apache) with MySQL database"
|
||||
|
||||
prepare_system
|
||||
|
||||
prepare_web
|
||||
|
||||
clear_deploy
|
||||
|
||||
echo "########################################################"
|
||||
|
||||
if [ "$1" != "" ]; then
|
||||
echo "** Executing '$@'"
|
||||
exec "$@"
|
||||
elif [ -f "/usr/bin/supervisord" ]; then
|
||||
echo "** Executing supervisord"
|
||||
exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|
||||
else
|
||||
echo "Unknown instructions. Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exec "$@"
|
||||
|
||||
#################################################
|
||||
|
@ -4,22 +4,21 @@ LABEL org.opencontainers.image.title="Zabbix web-interface (Apache, PostgreSQL)"
|
||||
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="abbix web-interface based on Apache2 web server with PostgreSQL database support" \
|
||||
org.opencontainers.image.description="Zabbix web-interface based on Apache2 web server with PostgreSQL database support" \
|
||||
org.opencontainers.image.licenses="GPL v2.0"
|
||||
|
||||
STOPSIGNAL SIGTERM
|
||||
|
||||
RUN set -eux && \
|
||||
addgroup -S -g 1000 zabbix && \
|
||||
addgroup -S -g 1995 zabbix && \
|
||||
adduser -S \
|
||||
-D -G zabbix \
|
||||
-u 999 \
|
||||
-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 add --clean-protected --no-cache \
|
||||
apache2 \
|
||||
bash \
|
||||
@ -48,9 +47,10 @@ RUN set -eux && \
|
||||
-e 's!^(\s*ErrorLog)\s+\S+!\1 /proc/self/fd/2!g' \
|
||||
"/etc/apache2/httpd.conf" && \
|
||||
sed -ri \
|
||||
-e 's!^(\s*PidFile)\s+\S+!\1 "/var/run/httpd.pid"!g' \
|
||||
-e 's!^(\s*PidFile)\s+\S+!\1 "/tmp/httpd.pid"!g' \
|
||||
"/etc/apache2/conf.d/mpm.conf" && \
|
||||
rm -f "/var/run/apache2/apache2.pid" && \
|
||||
sed -i 's/Listen 80/Listen 8080/g' /etc/apache2/httpd.conf && \
|
||||
rm -rf "/var/run/apache2/" && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
ARG MAJOR_VERSION=5.0
|
||||
@ -63,6 +63,8 @@ LABEL org.opencontainers.image.documentation="https://www.zabbix.com/documentati
|
||||
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 \
|
||||
gettext \
|
||||
@ -77,22 +79,26 @@ RUN set -eux && \
|
||||
rm -rf tests && \
|
||||
./locale/make_mo.sh && \
|
||||
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/apache2/ /etc/php7/ && \
|
||||
chgrp -R 0 /etc/apache2/ /etc/php7/ && \
|
||||
chmod -R g=u /etc/apache2/ /etc/php7/ && \
|
||||
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/apache2"]
|
||||
|
||||
COPY ["conf/etc/zabbix/apache.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/apache_ssl.conf", "/etc/zabbix/"]
|
||||
COPY ["conf/etc/zabbix/web/zabbix.conf.php", "/etc/zabbix/web/"]
|
||||
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"]
|
||||
|
||||
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]
|
||||
|
@ -6,4 +6,3 @@ max_input_time=300
|
||||
; always_populate_raw_post_data=-1
|
||||
max_input_vars=10000
|
||||
; date.timezone=Europe/Riga
|
||||
; session.save_path=/var/lib/php5
|
||||
|
@ -1,4 +1,4 @@
|
||||
<VirtualHost *:80>
|
||||
<VirtualHost *:8080>
|
||||
DocumentRoot /usr/share/zabbix/
|
||||
ServerName zabbix
|
||||
DirectoryIndex index.php
|
||||
|
@ -1,10 +1,10 @@
|
||||
LoadModule ssl_module modules/mod_ssl.so
|
||||
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
|
||||
|
||||
Listen 443
|
||||
Listen 8443
|
||||
|
||||
<IfModule mod_ssl.c>
|
||||
<VirtualHost *:443>
|
||||
<VirtualHost *:8443>
|
||||
SSLEngine on
|
||||
|
||||
DocumentRoot /usr/share/zabbix/
|
||||
|
@ -123,7 +123,7 @@ update_config_var() {
|
||||
}
|
||||
|
||||
# Check prerequisites for PostgreSQL database
|
||||
check_variables_postgresql() {
|
||||
check_variables() {
|
||||
file_env POSTGRES_USER
|
||||
file_env POSTGRES_PASSWORD
|
||||
|
||||
@ -142,7 +142,7 @@ check_variables_postgresql() {
|
||||
DB_SERVER_DBNAME=${POSTGRES_DB:-"zabbix"}
|
||||
}
|
||||
|
||||
check_db_connect_postgresql() {
|
||||
check_db_connect() {
|
||||
echo "********************"
|
||||
echo "* DB_SERVER_HOST: ${DB_SERVER_HOST}"
|
||||
echo "* DB_SERVER_PORT: ${DB_SERVER_PORT}"
|
||||
@ -183,31 +183,7 @@ check_db_connect_postgresql() {
|
||||
unset PGOPTIONS
|
||||
}
|
||||
|
||||
psql_query() {
|
||||
query=$1
|
||||
db=$2
|
||||
|
||||
local result=""
|
||||
|
||||
if [ -n "${DB_SERVER_ZBX_PASS}" ]; then
|
||||
export PGPASSWORD="${DB_SERVER_ZBX_PASS}"
|
||||
fi
|
||||
|
||||
if [ -n "${DB_SERVER_SCHEMA}" ]; then
|
||||
PGOPTIONS="--search_path=${DB_SERVER_SCHEMA}"
|
||||
export PGOPTIONS
|
||||
fi
|
||||
|
||||
result=$(psql -A -q -t -h ${DB_SERVER_HOST} -p ${DB_SERVER_PORT} \
|
||||
-U ${DB_SERVER_ROOT_USER} -c "$query" $db 2>/dev/null);
|
||||
|
||||
unset PGPASSWORD
|
||||
unset PGOPTIONS
|
||||
|
||||
echo $result
|
||||
}
|
||||
|
||||
prepare_web_server_apache() {
|
||||
prepare_web_server() {
|
||||
APACHE_SITES_DIR=/etc/apache2/conf.d
|
||||
|
||||
echo "** Adding Zabbix virtual host (HTTP)"
|
||||
@ -274,18 +250,34 @@ prepare_zbx_web_config() {
|
||||
prepare_web() {
|
||||
echo "** Preparing Zabbix web-interface"
|
||||
|
||||
check_variables_postgresql
|
||||
check_db_connect_postgresql
|
||||
prepare_web_server_apache
|
||||
check_variables
|
||||
check_db_connect
|
||||
prepare_web_server
|
||||
prepare_zbx_web_config
|
||||
}
|
||||
|
||||
|
||||
#################################################
|
||||
|
||||
if [ "$1" == '/usr/sbin/httpd' ]; then
|
||||
prepare_web
|
||||
echo "** Deploying Zabbix web-interface (Apache) with MySQL database"
|
||||
|
||||
prepare_system
|
||||
|
||||
prepare_web
|
||||
|
||||
clear_deploy
|
||||
|
||||
echo "########################################################"
|
||||
|
||||
if [ "$1" != "" ]; then
|
||||
echo "** Executing '$@'"
|
||||
exec "$@"
|
||||
elif [ -f "/usr/bin/supervisord" ]; then
|
||||
echo "** Executing supervisord"
|
||||
exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|
||||
else
|
||||
echo "Unknown instructions. Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exec "$@"
|
||||
|
||||
#################################################
|
||||
|
@ -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
@ -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=postgresql 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 PostgreSQL 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, PostgreSQL)" \
|
||||
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="abbix web-interface based on Nginx web server with PostgreSQL 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 \
|
||||
nginx \
|
||||
@ -53,21 +40,24 @@ RUN set -eux && \
|
||||
php7-xmlwriter \
|
||||
postgresql-client \
|
||||
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}-pgsql --link postgres-server:postgres --link zabbix-server:zabbix-server -p 80:80 -d zabbix-web-${ZBX_OPT_TYPE}-pgsql: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 && \
|
||||
@ -80,24 +70,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;
|
||||
|
@ -6,4 +6,3 @@ max_input_time=300
|
||||
; always_populate_raw_post_data=-1
|
||||
max_input_vars=10000
|
||||
; date.timezone=Europe/Riga
|
||||
; session.save_path=/var/lib/php7
|
||||
|
@ -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;
|
||||
|
@ -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/php7-fpm.sock;
|
||||
fastcgi_pass unix:/tmp/php-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
|
||||
fastcgi_param SCRIPT_FILENAME $webroot$fastcgi_script_name;
|
||||
|
@ -2,7 +2,7 @@
|
||||
// Zabbix GUI configuration file.
|
||||
global $DB, $HISTORY;
|
||||
|
||||
$DB['TYPE'] = 'MYSQL';
|
||||
$DB['TYPE'] = 'POSTGRESQL';
|
||||
$DB['SERVER'] = '{DB_SERVER_HOST}';
|
||||
$DB['PORT'] = '{DB_SERVER_PORT}';
|
||||
$DB['DATABASE'] = '{DB_SERVER_DBNAME}';
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user