zabbix-server-pgsql run failed
qinweizhen1 opened this issue · 6 comments
when I buid image by zabbix-docker-6.4\Dockerfiles\build-pgsql\ubuntu\DockerFile.
try run image
error info:/usr/sbin/zabbix_server: error while loading shared libraries: libnetsnmp.so.35: cannot open shared object file: No such file or directory
how did you build? Please share steps.
step 1:I build and make in wsl(ubuntu 20.04) with the zabbix-server source code(6.4.12): ./configure --datadir=/usr/lib --libdir=/usr/lib/zabbix --prefix=/usr --sysconfdir=/etc/zabbix --enable-agent --enable-agent2 --enable-ipv6 --enable-proxy --enable-server --enable-webservice --with-ldap --with-libcurl --with-libmodbus --with-libpcre2 --with-libxml2 --with-net-snmp --with-openipmi --with-openssl --with-postgresql --with-ssh --with-unixodbc --enable-java --silent &&\
make
step 2: build image :docker build -t zabbix-server . Dockerfile Info :
ARG MAJOR_VERSION=6.4
ARG ZBX_VERSION=${MAJOR_VERSION}.12
FROM ubuntu:jammy
ARG MAJOR_VERSION
ARG ZBX_VERSION
ARG ZBX_SOURCES=https://git.zabbix.com/scm/zbx/zabbix.git
ENV TERM=xterm
ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES}
MIBDIRS=/var/lib/mibs/ietf:/var/lib/mibs/iana:/usr/share/snmp/mibs:/var/lib/zabbix/mibs MIBS=+ALL
NMAP_PRIVILEGED=""
LABEL org.opencontainers.image.authors="Alexey Pustovalov alexey.pustovalov@zabbix.com"
org.opencontainers.image.description="Zabbix server with PostgreSQL database support"
org.opencontainers.image.documentation="https://www.zabbix.com/documentation/${MAJOR_VERSION}/manual/installation/containers"
org.opencontainers.image.licenses="GPL v2.0"
org.opencontainers.image.source="${ZBX_SOURCES}"
org.opencontainers.image.title="Zabbix server (PostgreSQL)"
org.opencontainers.image.url="https://zabbix.com/"
org.opencontainers.image.vendor="Zabbix LLC"
org.opencontainers.image.version="${ZBX_VERSION}"
STOPSIGNAL SIGTERM
COPY ["src/zabbix_server/zabbix_server", "/usr/sbin/zabbix_server"]
COPY ["src/zabbix_get/zabbix_get", "/usr/bin/zabbix_get"]
COPY ["src/zabbix_sender/zabbix_sender", "/usr/bin/zabbix_sender"]
COPY ["conf/zabbix_server.conf", "/etc/zabbix/zabbix_server.conf"]
COPY ["database/postgresql/create_server.sql.gz", "/usr/share/doc/zabbix-server-postgresql/create.sql.gz"]
COPY ["database/postgresql/timescaledb/schema.sql", "/usr/share/doc/zabbix-server-postgresql/timescaledb.sql"]
COPY ["database/postgresql/timescaledb/option-patches/with-compression/.sql", "/usr/share/doc/zabbix-server-postgresql/option-patches/with-compression/"]
COPY ["database/postgresql/timescaledb/option-patches/without-compression/.sql", "/usr/share/doc/zabbix-server-postgresql/option-patches/without-compression/"]
RUN --mount=type=cache,target=/var/lib/apt/,sharing=locked
set -eux &&
echo "#!/bin/sh\nexit 101" > /usr/sbin/policy-rc.d &&
INSTALL_PKGS="bash
tini
traceroute
nmap
tzdata
ca-certificates
iputils-ping
traceroute
fping
libcurl4
libevent-2.1
libevent-pthreads-2.1
libopenipmi0
libpcre2-8-0
libpq5
libsnmp40
libssh-4
libssl3
libxml2
postgresql-client
snmp-mibs-downloader
gzip
unixodbc" &&
apt-get -y update &&
DEBIAN_FRONTEND=noninteractive apt-get -y
--no-install-recommends install
${INSTALL_PKGS} &&
groupadd
--system
--gid 1995
zabbix &&
useradd
--system
--comment "Zabbix monitoring system"
-g zabbix
-G dialout
--uid 1997
--shell /sbin/nologin
--home-dir /var/lib/zabbix/
zabbix &&
chgrp zabbix /usr/bin/nmap &&
setcap cap_net_raw+eip /usr/bin/nmap &&
mkdir -p /etc/zabbix &&
mkdir -p /var/lib/zabbix &&
mkdir -p /usr/lib/zabbix/alertscripts &&
mkdir -p /usr/lib/zabbix/dbscripts &&
mkdir -p /var/lib/zabbix/dbscripts &&
mkdir -p /var/lib/zabbix/enc &&
mkdir -p /var/lib/zabbix/export &&
mkdir -p /usr/lib/zabbix/externalscripts &&
mkdir -p /var/lib/zabbix/mibs &&
mkdir -p /var/lib/zabbix/modules &&
mkdir -p /var/lib/zabbix/snmptraps &&
mkdir -p /var/lib/zabbix/ssh_keys &&
mkdir -p /var/lib/zabbix/ssl &&
mkdir -p /var/lib/zabbix/ssl/certs &&
mkdir -p /var/lib/zabbix/ssl/keys &&
mkdir -p /var/lib/zabbix/ssl/ssl_ca &&
mkdir -p /usr/share/doc/zabbix-server-postgresql &&
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/ &&
apt-get -y autoremove &&
apt-get -y clean
EXPOSE 10051/TCP
WORKDIR /var/lib/zabbix
VOLUME ["/var/lib/zabbix/snmptraps", "/var/lib/zabbix/export"]
COPY ["docker-entrypoint.sh", "/usr/bin/"]
ENTRYPOINT ["/usr/bin/tini", "--", "/usr/bin/docker-entrypoint.sh"]
USER 1997
CMD ["/usr/sbin/zabbix_server", "--foreground", "-c", "/etc/zabbix/zabbix_server.conf"]
step 3: run image -- docker run -e DB_SERVER_HOST=*** -e POSTGRES_USER=*** -e POSTGRES_PASSWORD=*** -p 10051:10051 zabbix-server
step 4: show docker log:
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSKeyFile": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSPSKIdentity": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSPSKFile": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ServiceManagerSyncFrequency": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HANodeName": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "NodeAddress": ''...removed
2024-03-01 11:53:52 ** Updating '/etc/zabbix/zabbix_server.conf' parameter "User": 'zabbix'...added
2024-03-01 11:53:52 /usr/sbin/zabbix_server: error while loading shared libraries: libnetsnmp.so.35: cannot open shared object file: No such file or directory
20.04 is not ubuntu:jammy. You build server on old version of Ubuntu...
zabbix-server source code is can not build in ubuntu:20.04??, If I change Dockfile base image to FROM ubuntu:20.04, is can work??
You can, but in this case you need to use appropriate Dockerfile for final image. It must corresponding your system where built sources.
it Can work normally, thank you very much