From 431b8007b614ce1b63b5ac895841f75cc3d9573f Mon Sep 17 00:00:00 2001 From: Alexey Pustovalov Date: Wed, 15 Jan 2025 13:02:02 +0900 Subject: [PATCH] Fixed snmptrapd persistent directory --- Dockerfiles/snmptraps/alpine/Dockerfile | 6 ++++-- Dockerfiles/snmptraps/centos/Dockerfile | 6 ++++-- Dockerfiles/snmptraps/ol/Dockerfile | 6 ++++-- Dockerfiles/snmptraps/rhel/Dockerfile | 6 ++++-- Dockerfiles/snmptraps/ubuntu/Dockerfile | 5 ++++- compose_zabbix_components.yaml | 1 + 6 files changed, 21 insertions(+), 9 deletions(-) diff --git a/Dockerfiles/snmptraps/alpine/Dockerfile b/Dockerfiles/snmptraps/alpine/Dockerfile index 589e4f734..7be03e9da 100644 --- a/Dockerfiles/snmptraps/alpine/Dockerfile +++ b/Dockerfiles/snmptraps/alpine/Dockerfile @@ -13,6 +13,8 @@ ENV TERM=xterm \ ZBX_SNMP_TRAP_USE_DNS=false \ ZABBIX_USER_HOME_DIR="/var/lib/zabbix" +ENV SNMP_PERSISTENT_DIR="${ZABBIX_USER_HOME_DIR}/snmptrapd_config" + LABEL org.opencontainers.image.authors="Alexey Pustovalov " \ org.opencontainers.image.description="Zabbix SNMP traps receiver" \ org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \ @@ -48,7 +50,7 @@ RUN set -eux && \ mkdir -p ${ZABBIX_USER_HOME_DIR} && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/snmptraps && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/mibs && \ - touch /var/lib/net-snmp/snmptrapd.conf && \ + mkdir -p ${SNMP_PERSISTENT_DIR} && \ chown --quiet -R zabbix:root /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ @@ -57,7 +59,7 @@ EXPOSE 1162/UDP WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/ -VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps"] +VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"] COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"] COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"] diff --git a/Dockerfiles/snmptraps/centos/Dockerfile b/Dockerfiles/snmptraps/centos/Dockerfile index 60d565c2f..eaa9c5d02 100644 --- a/Dockerfiles/snmptraps/centos/Dockerfile +++ b/Dockerfiles/snmptraps/centos/Dockerfile @@ -13,6 +13,8 @@ ENV TERM=xterm \ ZBX_SNMP_TRAP_USE_DNS=false \ ZABBIX_USER_HOME_DIR="/var/lib/zabbix" +ENV SNMP_PERSISTENT_DIR="${ZABBIX_USER_HOME_DIR}/snmptrapd_config" + LABEL org.opencontainers.image.authors="Alexey Pustovalov " \ org.opencontainers.image.description="Zabbix SNMP traps receiver" \ org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \ @@ -54,7 +56,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \ mkdir -p ${ZABBIX_USER_HOME_DIR} && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/snmptraps && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/mibs && \ - touch /var/lib/net-snmp/snmptrapd.conf && \ + mkdir -p ${SNMP_PERSISTENT_DIR} && \ chown --quiet -R zabbix:root /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ @@ -63,7 +65,7 @@ EXPOSE 1162/UDP WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/ -VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps"] +VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"] COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"] COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"] diff --git a/Dockerfiles/snmptraps/ol/Dockerfile b/Dockerfiles/snmptraps/ol/Dockerfile index 0d1613088..8b34dae40 100644 --- a/Dockerfiles/snmptraps/ol/Dockerfile +++ b/Dockerfiles/snmptraps/ol/Dockerfile @@ -13,6 +13,8 @@ ENV TERM=xterm \ ZBX_SNMP_TRAP_USE_DNS=false \ ZABBIX_USER_HOME_DIR="/var/lib/zabbix" +ENV SNMP_PERSISTENT_DIR="${ZABBIX_USER_HOME_DIR}/snmptrapd_config" + LABEL org.opencontainers.image.authors="Alexey Pustovalov " \ org.opencontainers.image.description="Zabbix SNMP traps receiver" \ org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \ @@ -53,7 +55,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \ mkdir -p ${ZABBIX_USER_HOME_DIR} && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/snmptraps && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/mibs && \ - touch /var/lib/net-snmp/snmptrapd.conf && \ + mkdir -p ${SNMP_PERSISTENT_DIR} && \ chown --quiet -R zabbix:root /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ @@ -62,7 +64,7 @@ EXPOSE 1162/UDP WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/ -VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps"] +VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"] COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"] COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"] diff --git a/Dockerfiles/snmptraps/rhel/Dockerfile b/Dockerfiles/snmptraps/rhel/Dockerfile index 986f1e421..812ddb584 100644 --- a/Dockerfiles/snmptraps/rhel/Dockerfile +++ b/Dockerfiles/snmptraps/rhel/Dockerfile @@ -15,6 +15,8 @@ ENV TERM=xterm \ ZBX_SNMP_TRAP_USE_DNS=false \ ZABBIX_USER_HOME_DIR="/var/lib/zabbix" +ENV SNMP_PERSISTENT_DIR="${ZABBIX_USER_HOME_DIR}/snmptrapd_config" + LABEL description="Zabbix SNMP traps receiver" \ maintainer="alexey.pustovalov@zabbix.com" \ name="zabbix/zabbix-snmptraps-72" \ @@ -93,7 +95,7 @@ RUN --mount=type=tmpfs,target=/var/lib/dnf/ \ mkdir -p ${ZABBIX_USER_HOME_DIR} && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/snmptraps && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/mibs && \ - touch /var/lib/net-snmp/snmptrapd.conf && \ + mkdir -p ${SNMP_PERSISTENT_DIR} && \ chown --quiet -R zabbix:root /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ @@ -102,7 +104,7 @@ EXPOSE 1162/UDP WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/ -VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps"] +VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"] COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"] COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"] diff --git a/Dockerfiles/snmptraps/ubuntu/Dockerfile b/Dockerfiles/snmptraps/ubuntu/Dockerfile index 5aaf0ec27..2e1b1a64d 100644 --- a/Dockerfiles/snmptraps/ubuntu/Dockerfile +++ b/Dockerfiles/snmptraps/ubuntu/Dockerfile @@ -13,6 +13,8 @@ ENV TERM=xterm \ ZBX_SNMP_TRAP_USE_DNS=false \ ZABBIX_USER_HOME_DIR="/var/lib/zabbix" +ENV SNMP_PERSISTENT_DIR="${ZABBIX_USER_HOME_DIR}/snmptrapd_config" + LABEL org.opencontainers.image.authors="Alexey Pustovalov " \ org.opencontainers.image.description="Zabbix SNMP traps receiver" \ org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers" \ @@ -52,6 +54,7 @@ RUN --mount=type=cache,target=/var/cache/apt/,sharing=locked \ mkdir -p ${ZABBIX_USER_HOME_DIR} && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/snmptraps && \ mkdir -p ${ZABBIX_USER_HOME_DIR}/mibs && \ + mkdir -p ${SNMP_PERSISTENT_DIR} && \ chown --quiet -R zabbix:root /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chgrp -R 0 /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ && \ chmod -R g=u /etc/snmp/ ${ZABBIX_USER_HOME_DIR}/ /var/tmp/ /var/run/ @@ -60,7 +63,7 @@ EXPOSE 1162/UDP WORKDIR ${ZABBIX_USER_HOME_DIR}/snmptraps/ -VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps"] +VOLUME ["${ZABBIX_USER_HOME_DIR}/snmptraps", "${SNMP_PERSISTENT_DIR}"] COPY ["conf/etc/logrotate.d/zabbix_snmptraps", "/etc/logrotate.d/"] COPY ["conf/etc/snmp/snmptrapd.conf", "/etc/snmp/"] diff --git a/compose_zabbix_components.yaml b/compose_zabbix_components.yaml index cee962a67..913c3a025 100644 --- a/compose_zabbix_components.yaml +++ b/compose_zabbix_components.yaml @@ -636,6 +636,7 @@ services: read_only: true volumes: - snmptraps:/var/lib/zabbix/snmptraps:rwz + - ${DATA_DIRECTORY}/var/lib/zabbix/snmptrapd_config:/var/lib/zabbix/snmptrapd_config:rw tmpfs: /tmp deploy: resources: