Esta sección describe cómo implementar Zabbix con Docker o Docker Compose.
Zabbix proporciona oficialmente:
Desde Zabbix 6.0, los triggers deterministas deben crearse durante la instalación. Si el registro binario está habilitado para MySQL/MariaDB, esto requiere privilegios de superusuario o establecer la variable/parámetro de configuración log_bin_trust_function_creators = 1. Consulte Scripts de creación de base de datos para obtener instrucciones sobre cómo establecer la variable.
Tenga en cuenta que si se ejecuta desde una consola, la variable solo se establecerá temporalmente y se eliminará cuando se reinicie un Docker. En este caso, mantenga su servicio SQL en ejecución, detenga solo el servicio zabbix-server ejecutando 'docker compose down zabbix-server' y luego 'docker compose up -d zabbix-server'.
Alternativamente, puede establecer esta variable en el archivo de configuración.
Los archivos fuente de Docker se almacenan en el repositorio oficial de Zabbix en GitHub, donde puede seguir los últimos cambios de archivos o bifurcar el proyecto para crear sus propias imágenes.
Zabbix proporciona imágenes basadas en una variedad de imágenes base de sistemas operativos. Para obtener la lista de imágenes de sistemas operativos base soportadas para un componente específico de Zabbix, consulte la descripción del componente en Docker Hub. Todas las imágenes de Zabbix están configuradas para reconstruir las imágenes más recientes si se actualizan las imágenes base.
Para obtener la imagen de un componente de Zabbix, ejecute:
Reemplace zabbix/zabbix-server-mysql con el nombre del repositorio docker requerido.
Este comando descargará la última versión estable del componente Zabbix basada en el sistema operativo Alpine Linux. Puede añadir etiquetas al nombre del repositorio para obtener una imagen basada en otro sistema operativo o de una versión mayor o menor específica de Zabbix.
Los siguientes repositorios están disponibles en Docker Hub:
| Componente | Repositorio Docker | |
|---|---|---|
| Zabbix agent | zabbix/zabbix-agent | |
| Zabbix server | ||
| con soporte para MySQL | zabbix/zabbix-server-mysql | |
| con soporte para PostgreSQL | zabbix/zabbix-server-pgsql | |
| Interfaz web de Zabbix | ||
| basada en el servidor web Apache2 con soporte para MySQL | zabbix/zabbix-web-apache-mysql | |
| basada en el servidor web Apache2 con soporte para PostgreSQL | zabbix/zabbix-web-apache-pgsql | |
| basada en el servidor web Nginx con soporte para MySQL | zabbix/zabbix-web-nginx-mysql | |
| basada en el servidor web Nginx con soporte para PostgreSQL | zabbix/zabbix-web-nginx-pgsql | |
| Zabbix proxy | ||
| con soporte para SQLite3 | zabbix/zabbix-proxy-sqlite3 | |
| con soporte para MySQL | zabbix/zabbix-proxy-mysql | |
| Zabbix Java gateway | zabbix/zabbix-java-gateway | |
El soporte para SNMP trap se proporciona en un repositorio separado zabbix/zabbix-snmptraps. Puede vincularse con Zabbix server y Zabbix proxy.
Las imágenes oficiales de los componentes de Zabbix pueden contener las siguientes etiquetas:
| Etiqueta | Descripción | Ejemplo |
|---|---|---|
| latest | La última versión estable de un componente de Zabbix basada en la imagen de Alpine Linux. | zabbix-agent:latest |
| <OS>-trunk | La última compilación nocturna de la versión de Zabbix que se está desarrollando actualmente en un sistema operativo específico. <OS> - el sistema operativo base. Valores soportados: alpine - Alpine Linux; ltsc2019 - Windows 10 LTSC 2019 (solo agente); ol - Oracle Linux; ltsc2022 - Windows 11 LTSC 2022 (solo agente); ubuntu - Ubuntu |
zabbix-agent:ubuntu-trunk |
| <OS>-latest | La última versión estable de un componente de Zabbix en un sistema operativo específico. <OS> - el sistema operativo base. Valores soportados: alpine - Alpine Linux; ltsc2019 - Windows 10 LTSC 2019 (solo agente); ol - Oracle Linux; ltsc2022 - Windows 11 LTSC 2022 (solo agente); ubuntu - Ubuntu |
zabbix-agent:ol-latest |
| <OS>-X.X-latest | La última versión menor de un componente de Zabbix de una versión mayor y sistema operativo específicos. <OS> - el sistema operativo base. Valores soportados: alpine - Alpine Linux; ltsc2019 - Windows 10 LTSC 2019 (solo agente); ol - Oracle Linux; ltsc2022 - Windows 11 LTSC 2022 (solo agente); ubuntu - Ubuntu X.X - la versión mayor de Zabbix (es decir, 6.0, 7.0, 7.2). |
zabbix-agent:alpine-7.0-latest |
| <OS>-X.X.* | La última versión menor de un componente de Zabbix de una versión mayor y sistema operativo específicos. <OS> - el sistema operativo base. Valores soportados: alpine - Alpine Linux; ltsc2019 - Windows 10 LTSC 2019 (solo agente); ol - Oracle Linux; ltsc2022 - Windows 11 LTSC 2022 (solo agente); ubuntu - Ubuntu X.X - la versión mayor de Zabbix (es decir, 6.0, 7.0, 7.2). * - la versión menor de Zabbix |
zabbix-agent:alpine-7.0.1 |
Después de descargar las imágenes, inicie los contenedores ejecutando el comando docker run seguido de argumentos adicionales para especificar las variables de entorno y/o puntos de montaje requeridos. A continuación se proporcionan algunos ejemplos de configuración.
Zabbix no debe ejecutarse como PID1/como un proceso init en contenedores en Zabbix 7.0.0-7.0.2.
Para habilitar la comunicación entre los componentes de Zabbix, algunos puertos, como 10051/TCP para el servidor Zabbix (trapper), 10050/TCP para el agent Zabbix, 162/UDP para SNMP traps y 80/TCP para la interfaz web de Zabbix, se expondrán a la máquina host. La lista completa de puertos por defecto utilizados por los componentes de Zabbix está disponible en la página de Requisitos. Para el servidor y el agent de Zabbix, el puerto por defecto puede cambiarse estableciendo la variable de entorno ZBX_LISTENPORT environment variable.
Todas las imágenes de los componentes de Zabbix proporcionan variables de entorno para controlar la configuración. Las variables de entorno compatibles se enumeran en el repositorio del componente.
Estas variables de entorno son opciones de los archivos de configuración de Zabbix, pero con un método de nomenclatura diferente. Por ejemplo, ZBX_LOGSLOWQUERIES es igual a LogSlowQueries de los archivos de configuración de Zabbix server o Zabbix proxy.
Algunas opciones de configuración (por ejemplo, PIDFile y LogType) no se pueden cambiar.
Las siguientes variables de entorno son específicas de los componentes de Docker y no existen en los archivos de configuración de Zabbix:
| Variable | Componentes | Valor por defecto | Descripción |
|---|---|---|---|
DB_SERVER_HOST |
Server Proxy Web interface |
mysql-server para MYSQL postgres-server para PostgreSQL |
IP o nombre DNS del servidor MySQL o PostgreSQL. |
DB_SERVER_PORT |
Server Proxy Web interface |
3306 para MYSQL 5432 para PostgreSQL |
Puerto del servidor MySQL o PostgreSQL. |
MYSQL_USER |
Server Proxy Web-interface |
zabbix |
Usuario de la base de datos MySQL. |
MYSQL_PASSWORD |
Server Proxy Web interface |
zabbix |
Contraseña de la base de datos MySQL. |
MYSQL_DATABASE |
Server Proxy Web interface |
zabbix para Zabbix server zabbix_proxy para Zabbix proxy |
Nombre de la base de datos de Zabbix. |
POSTGRES_USER |
Server Web interface |
zabbix |
Usuario de la base de datos PostgreSQL. |
POSTGRES_PASSWORD |
Server Web interface |
zabbix |
Contraseña de la base de datos PostgreSQL. |
POSTGRES_DB |
Server Web interface |
zabbix para Zabbix server zabbix_proxy para Zabbix proxy |
Nombre de la base de datos de Zabbix. |
PHP_TZ |
Web-interface | Europe/Riga |
Zona horaria en formato PHP. La lista completa de zonas horarias compatibles está disponible en php.net. |
ZBX_SERVER_NAME |
Web interface | Zabbix Docker |
Nombre visible de la instalación de Zabbix debajo del logotipo de Zabbix en el menú vertical de la interfaz web. |
ZBX_JAVAGATEWAY_ENABLE |
Server Proxy |
false |
Habilita la comunicación con Zabbix Java gateway para recopilar comprobaciones relacionadas con Java. |
ZBX_ENABLE_SNMP_TRAPS |
Server Proxy |
false |
Habilita la función de traps SNMP. Requiere una instancia de zabbix-snmptraps y el volumen compartido /var/lib/zabbix/snmptraps para Zabbix server o Zabbix proxy. |
Las imágenes permiten montar volúmenes utilizando los siguientes puntos de montaje:
| Volumen | Descripción | |
|---|---|---|
| Zabbix agent | ||
| /etc/zabbix/zabbix_agentd.d | El volumen permite incluir archivos *.conf y ampliar Zabbix agent utilizando la funcionalidad UserParameter |
|
| /var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y ampliar Zabbix agent utilizando la funcionalidad LoadModule | |
| /var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Los nombres de estos archivos se especifican utilizando las variables de entorno ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE y ZBX_TLSPSKFILE |
|
| Zabbix server | ||
| /usr/lib/zabbix/alertscripts | El volumen se utiliza para scripts de alerta personalizados. Es el parámetro AlertScriptsPath en zabbix_server.conf |
|
| /usr/lib/zabbix/externalscripts | El volumen es utilizado por external checks. Es el parámetro ExternalScripts en zabbix_server.conf |
|
| /var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y ampliar Zabbix server utilizando la funcionalidad LoadModule | |
| /var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Los nombres de estos archivos se especifican utilizando las variables de entorno ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE y ZBX_TLSPSKFILE |
|
| /var/lib/zabbix/ssl/certs | El volumen se utiliza como ubicación de los archivos de certificados de cliente SSL para la autenticación de clientes. Es el parámetro SSLCertLocation en zabbix_server.conf |
|
| /var/lib/zabbix/ssl/keys | El volumen se utiliza como ubicación de los archivos de clave privada SSL para la autenticación de clientes. Es el parámetro SSLKeyLocation en zabbix_server.conf |
|
| /var/lib/zabbix/ssl/ssl_ca | El volumen se utiliza como ubicación de los archivos de la autoridad certificadora (CA) para la verificación del certificado SSL del servidor. Es el parámetro SSLCALocation en zabbix_server.conf |
|
| /var/lib/zabbix/snmptraps | El volumen se utiliza como ubicación del archivo snmptraps.log. Puede ser compartido por el contenedor zabbix-snmptraps y heredado utilizando la opción volumes_from de Docker al crear una nueva instancia de Zabbix server. La funcionalidad de procesamiento de traps SNMP puede habilitarse utilizando el volumen compartido y cambiando la variable de entorno ZBX_ENABLE_SNMP_TRAPS a 'true' |
|
| /var/lib/zabbix/mibs | El volumen permite añadir nuevos archivos MIB. No soporta subdirectorios, todas las MIBs deben colocarse en /var/lib/zabbix/mibs |
|
| Zabbix proxy | ||
| /usr/lib/zabbix/externalscripts | El volumen es utilizado por external checks. Es el parámetro ExternalScripts en zabbix_proxy.conf |
|
| /var/lib/zabbix/db_data/ | El volumen permite almacenar archivos de base de datos en dispositivos externos. Soportado solo para Zabbix proxy con SQLite3 | |
| /var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y ampliar Zabbix server utilizando la funcionalidad LoadModule | |
| /var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Los nombres de estos archivos se especifican utilizando las variables de entorno ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE y ZBX_TLSPSKFILE |
|
| /var/lib/zabbix/ssl/certs | El volumen se utiliza como ubicación de los archivos de certificados de cliente SSL para la autenticación de clientes. Es el parámetro SSLCertLocation en zabbix_proxy.conf |
|
| /var/lib/zabbix/ssl/keys | El volumen se utiliza como ubicación de los archivos de clave privada SSL para la autenticación de clientes. Es el parámetro SSLKeyLocation en zabbix_proxy.conf |
|
| /var/lib/zabbix/ssl/ssl_ca | El volumen se utiliza como ubicación de los archivos de la autoridad certificadora (CA) para la verificación del certificado SSL del servidor. Es el parámetro SSLCALocation en zabbix_proxy.conf |
|
| /var/lib/zabbix/snmptraps | El volumen se utiliza como ubicación del archivo snmptraps.log. Puede ser compartido por el contenedor zabbix-snmptraps y heredado utilizando la opción volumes_from de Docker al crear una nueva instancia de Zabbix server. La funcionalidad de procesamiento de traps SNMP puede habilitarse utilizando el volumen compartido y cambiando la variable de entorno ZBX_ENABLE_SNMP_TRAPS a 'true' |
|
| /var/lib/zabbix/mibs | El volumen permite añadir nuevos archivos MIB. No soporta subdirectorios, todas las MIBs deben colocarse en /var/lib/zabbix/mibs |
|
| Interfaz web de Zabbix basada en el servidor web Apache2 | ||
| /etc/ssl/apache2 | El volumen permite habilitar HTTPS para la interfaz web de Zabbix. El volumen debe contener los dos archivos ssl.crt y ssl.key preparados para conexiones SSL de Apache2 |
|
| Interfaz web de Zabbix basada en el servidor web Nginx | ||
| /etc/ssl/nginx | El volumen permite habilitar HTTPS para la interfaz web de Zabbix. El volumen debe contener los dos archivos ssl.crt, ssl.key y dhparam.pem preparados para conexiones SSL de Nginx |
|
| Zabbix snmptraps | ||
| /var/lib/zabbix/snmptraps | El volumen contiene el archivo de registro snmptraps.log con los traps SNMP recibidos |
|
| /var/lib/zabbix/mibs | El volumen permite añadir nuevos archivos MIB. No soporta subdirectorios, todas las MIBs deben colocarse en /var/lib/zabbix/mibs |
|
Para información adicional, consulte los repositorios oficiales de Zabbix en Docker Hub.
Ejemplo 1
El ejemplo demuestra cómo ejecutar el servidor Zabbix con soporte para base de datos MySQL, la interfaz web de Zabbix basada en el servidor web Nginx y el Java gateway de Zabbix.
1. Crear una red dedicada para los contenedores de los componentes de Zabbix:
2. Iniciar una instancia vacía del servidor MySQL:
Para versiones de MySQL 8.4+, se debe usar caching_sha2_password en lugar de mysql_native_password.
docker run --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
--network=zabbix-net \
--restart unless-stopped \
-d mysql:8.0-oracle \
--character-set-server=utf8 --collation-server=utf8_bin \
--default-authentication-plugin=mysql_native_password3. Iniciar la instancia del Java gateway de Zabbix:
docker run --name zabbix-java-gateway -t \
--network=zabbix-net \
--restart unless-stopped \
-d zabbix/zabbix-java-gateway:alpine-7.0-latest4. Iniciar la instancia del servidor Zabbix y vincular la instancia con la instancia del servidor MySQL creada:
docker run --name zabbix-server-mysql -t \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
--network=zabbix-net \
-p 10051:10051 \
--restart unless-stopped \
-d zabbix/zabbix-server-mysql:alpine-7.0-latest5. Iniciar la interfaz web de Zabbix y vincular la instancia con las instancias del servidor MySQL y del servidor Zabbix creadas:
docker run --name zabbix-web-nginx-mysql -t \
-e ZBX_SERVER_HOST="zabbix-server-mysql" \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
--network=zabbix-net \
-p 80:8080 \
--restart unless-stopped \
-d zabbix/zabbix-web-nginx-mysql:alpine-7.0-latestEjemplo 2
El ejemplo demuestra cómo ejecutar el servidor Zabbix con soporte para base de datos PostgreSQL, la interfaz web de Zabbix basada en el servidor web Nginx y la funcionalidad de SNMP trap.
1. Crear una red dedicada para los contenedores de los componentes de Zabbix:
2. Iniciar una instancia vacía del servidor PostgreSQL:
docker run --name postgres-server -t \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix_pwd" \
-e POSTGRES_DB="zabbix" \
--network=zabbix-net \
--restart unless-stopped \
-d postgres:latest3. Iniciar la instancia de snmptraps de Zabbix:
docker run --name zabbix-snmptraps -t \
-v /zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \
--network=zabbix-net \
-p 162:1162/udp \
--restart unless-stopped \
-d zabbix/zabbix-snmptraps:alpine-7.0-latest4. Iniciar la instancia del servidor Zabbix y vincular la instancia con la instancia del servidor PostgreSQL creada:
docker run --name zabbix-server-pgsql -t \
-e DB_SERVER_HOST="postgres-server" \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix_pwd" \
-e POSTGRES_DB="zabbix" \
-e ZBX_ENABLE_SNMP_TRAPS="true" \
--network=zabbix-net \
-p 10051:10051 \
--volumes-from zabbix-snmptraps \
--restart unless-stopped \
-d zabbix/zabbix-server-pgsql:alpine-7.0-latest5. Iniciar la interfaz web de Zabbix y vincular la instancia con las instancias del servidor PostgreSQL y del servidor Zabbix creadas:
docker run --name zabbix-web-nginx-pgsql -t \
-e ZBX_SERVER_HOST="zabbix-server-pgsql" \
-e DB_SERVER_HOST="postgres-server" \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix_pwd" \
-e POSTGRES_DB="zabbix" \
--network=zabbix-net \
-p 443:8443 \
-p 80:8080 \
-v /etc/ssl/nginx:/etc/ssl/nginx:ro \
--restart unless-stopped \
-d zabbix/zabbix-web-nginx-pgsql:alpine-7.0-latestEjemplo 3
El ejemplo demuestra cómo ejecutar el servidor Zabbix con soporte para base de datos MySQL, la interfaz web de Zabbix basada en el servidor web Nginx y el Java gateway de Zabbix usando podman en Red Hat 8.
1. Crear un nuevo pod con el nombre zabbix y los puertos expuestos (interfaz web, trapper del servidor Zabbix):
2. (opcional) Iniciar el contenedor del agent de Zabbix en la ubicación del pod zabbix:
podman run --name zabbix-agent \
-e ZBX_SERVER_HOST="127.0.0.1,localhost" \
--restart=always \
--pod=zabbix \
-d registry.connect.redhat.com/zabbix/zabbix-agent-70:latest3. Crear el directorio ./mysql/ en el host e iniciar el servidor Oracle MySQL 8.0:
Para versiones de MySQL 8.4+, se debe usar caching_sha2_password en lugar de mysql_native_password.
podman run --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-v ./mysql/:/var/lib/mysql/:Z \
--restart=always \
--pod=zabbix \
-d mysql:8.0 \
--character-set-server=utf8 --collation-server=utf8_bin \
--default-authentication-plugin=mysql_native_password4. Iniciar el contenedor del servidor Zabbix:
podman run --name zabbix-server-mysql -t \
-e DB_SERVER_HOST="127.0.0.1" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-e ZBX_JAVAGATEWAY="127.0.0.1" \
--restart=always \
--pod=zabbix \
-d registry.connect.redhat.com/zabbix/zabbix-server-mysql-705. Iniciar el contenedor del Java Gateway de Zabbix:
podman run --name zabbix-java-gateway -t \
--restart=always \
--pod=zabbix \
-d registry.connect.redhat.com/zabbix/zabbix-java-gateway-706. Iniciar el contenedor de la interfaz web de Zabbix:
podman run --name zabbix-web-mysql -t \
-e ZBX_SERVER_HOST="127.0.0.1" \
-e DB_SERVER_HOST="127.0.0.1" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
--restart=always \
--pod=zabbix \
-d registry.connect.redhat.com/zabbix/zabbix-web-mysql-70El pod zabbix expone el puerto 80/TCP (HTTP) a la máquina host desde el 8080/TCP del contenedor zabbix-web-mysql.
Como alternativa, Zabbix puede instalarse utilizando el plugin Docker Compose. Los archivos Compose para definir y ejecutar componentes Zabbix multi-contenedor están disponibles en el repositorio oficial de Zabbix Docker en GitHub.
Los archivos compose oficiales de Zabbix soportan la versión 3 de Docker Compose.
Estos archivos compose se añaden como ejemplos; están sobrecargados. Por ejemplo, contienen proxies con soporte tanto para MySQL como para SQLite3.
Para obtener los archivos Docker compose proporcionados por Zabbix, clone el repositorio:
Cambie a la versión requerida:
Configure los archivos de configuración y cree e inicie los contenedores:
Reemplace docker-compose_v3_alpine_mysql_latest.yaml en el comando anterior por el archivo de configuración requerido.
Las siguientes opciones están disponibles:
| Nombre de archivo | Descripción |
|---|---|
docker-compose_v3_alpine_mysql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Alpine Linux con soporte para base de datos MySQL. |
docker-compose_v3_alpine_mysql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Alpine Linux con soporte para base de datos MySQL. |
docker-compose_v3_alpine_pgsql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Alpine Linux con soporte para base de datos PostgreSQL. |
docker-compose_v3_alpine_pgsql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Alpine Linux con soporte para base de datos PostgreSQL. |
docker-compose_v3_ol_mysql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Oracle Linux con soporte para base de datos MySQL. |
docker-compose_v3_ol_mysql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Oracle Linux con soporte para base de datos MySQL. |
docker-compose_v3_ol_pgsql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Oracle Linux con soporte para base de datos PostgreSQL. |
docker-compose_v3_ol_pgsql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Oracle Linux con soporte para base de datos PostgreSQL. |
docker-compose_v3_ubuntu_mysql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Ubuntu 20.04 con soporte para base de datos MySQL. |
docker-compose_v3_ubuntu_mysql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Ubuntu 20.04 con soporte para base de datos MySQL. |
docker-compose_v3_ubuntu_pgsql_latest.yaml |
El archivo compose ejecuta la última versión de los componentes de Zabbix 7.0 en Ubuntu 20.04 con soporte para base de datos PostgreSQL. |
docker-compose_v3_ubuntu_pgsql_local.yaml |
El archivo compose construye localmente la última versión de Zabbix 7.0 y ejecuta los componentes de Zabbix en Ubuntu 20.04 con soporte para base de datos PostgreSQL. |
Los archivos de composición están configurados para admitir el almacenamiento local en una máquina anfitriona. Docker Compose creará un directorio zbx_env en la carpeta con el archivo de composición cuando ejecuta los componentes de Zabbix usando el archivo de composición. El directorio contendrá la misma estructura que la descrita anteriormente en la Sección Volúmenes y el directorio para el almacenamiento de la base de datos.
También hay volúmenes en modo de solo lectura para los archivos /etc/localtime y /etc/timezone.
Los archivos de variables tienen la siguiente estructura de nombres: .env_<tipo de componente> y se encuentran en el directorio env_vars. Consulte variables de entorno para obtener detalles sobre la nomenclatura de las variables y la selección disponible.
Ejemplo 1
El comando descargará las últimas imágenes de Zabbix 7.0 para cada componente de Zabbix y las ejecutará en modo detach.
No olvide descargar los archivos .env_<tipo de componente> del repositorio oficial de Zabbix en github.com junto con los archivos compose.
Ejemplo 2
El comando descargará la imagen base Ubuntu 24.04 (noble), luego construirá los componentes de Zabbix 7.0 localmente y los ejecutará en modo detach.