Esta sección describe cómo desplegar Zabbix con Docker o Docker Compose.
Zabbix proporciona oficialmente:
Desde Zabbix 6.0, los disparadores 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.
Las fuentes de los archivos 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 imagenes de sistemas operativos. Para obtener la lista de imágenes del sistema operativo base compatibles para un componente Zabbix específico, 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 del componente Zabbix, ejecute:
Reemplace zabbix/zabbix-server-mysql
con el nombre del repositorio de Docker requerido.
Este comando extraerá la última versión estable del componente Zabbix basada en el sistema operativo Alpine Linux. Puede agregar etiquetas al nombre del repositorio para obtener una imagen basada en otro sistema operativo o en la versión principal o secundaria específica de Zabbix.
Los siguientes repositorios están disponibles en Docker Hub:
Componente | Repositorio Docker | |
---|---|---|
Agente Zabbix | zabbix/zabbix-agent | |
Servidor Zabbix | ||
con soporte MySQL | zabbix/zabbix-server-mysql | |
con soporte PostgreSQL | zabbix/zabbix-server-pgsql | |
Interfaz web de Zabbix | ||
basado en el servidor web Apache2 con soporte MySQL | zabbix/zabbix-web-apache-mysql | |
basado en el servidor web Apache2 con soporte PostgreSQL | zabbix/zabbix-web-apache-pgsql | |
basado en el servidor web Nginx con soporte MySQL | zabbix/zabbix-web-nginx-mysql | |
basado en el servidor web Nginx con soporte PostgreSQL | zabbix/zabbix-web-nginx-pgsql | |
Proxy Zabbix | ||
con soporte SQLite3 | zabbix/zabbix-proxy-sqlite3 | |
con soporte MySQL | zabbix/zabbix-proxy-mysql | |
Zabbix Java Gateway | zabbix/zabbix-java-gateway |
La compatibilidad con capturas SNMP se proporciona en un repositorio separado [zabbix/zabbix-snmptraps] (https://hub.docker.com/r/zabbix/zabbix-snmptraps/). Se puede vincular con el servidor Zabbix y el Proxy Zabbix.
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 los puntos-de-montaje requeridos. A continuación, se proporcionan algunos ejemplos de configuración.
Zabbix no debe ejecutarse como PID1/como un proceso de inicio 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 agente Zabbix, 162/UDP para las trampas SNMP y 80/TCP para la interfaz web de Zabbix, se expondrán a una máquina host. La lista completa de puertos predeterminados que utilizan los componentes de Zabbix está disponible en la página Requisitos. Para el servidor y el agente de Zabbix, el puerto predeterminado se puede cambiar configurando la variable de entorno ZBX_LISTENPORT.
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 |
Servidor Proxy Interfaz web |
mysql-server para MYSQL postgres-server para PostgreSQL |
IP o nombre DNS del servidor MySQL o PostgreSQL. |
DB_SERVER_PORT |
Servidor Proxy Interfaz web |
3306 para MYSQL 5432 para PostgreSQL |
Puerto del servidor MySQL o PostgreSQL. |
MYSQL_USER |
Servidor Proxy Interfaz web |
zabbix |
Usuario de la base de datos MySQL. |
MYSQL_PASSWORD |
Servidor Proxy Interfaz web |
zabbix |
Contraseña de la base de datos MySQL. |
MYSQL_DATABASE |
Servidor Proxy Interfaz web |
zabbix para Zabbix server zabbix_proxy para Zabbix proxy |
Nombre de la base de datos Zabbix. |
POSTGRES_USER |
Servidor Interfaz web |
zabbix |
Usuario de la base de datos PostgreSQL. |
POSTGRES_PASSWORD |
Servidor Interfaz web |
zabbix |
Contraseña de la base de datos PostgreSQL. |
POSTGRES_DB |
Servidor Interfaz web |
zabbix para Zabbix server zabbix_proxy para Zabbix proxy |
Nombre de la base de datos Zabbix. |
PHP_TZ |
Interfaz web | Europe/Riga |
Zona horaria en formato PHP. La lista completa de zonas horarias compatibles está disponible en php.net. |
ZBX_SERVER_NAME |
Interfaz web | Zabbix Docker |
Nombre visible de la instalación de Zabbix en la esquina superior derecha de la interfaz web. |
ZBX_JAVAGATEWAY_ENABLE |
Servidor Proxy |
false |
Habilita la comunicación con la pasarela Java de Zabbix para recopilar comprobaciones relacionadas con Java. |
ZBX_ENABLE_SNMP_TRAPS |
Servidor Proxy |
false |
Habilita la función de traps SNMP. Requiere una instancia de zabbix-snmptraps y un volumen compartido /var/lib/zabbix/snmptraps para el servidor Zabbix o el proxy Zabbix. |
Las imágenes permiten montar volúmenes utilizando los siguientes puntos de montaje:
Volumen | Descripción | |
---|---|---|
Agente de Zabbix | ||
/etc/zabbix/zabbix_agentd.d | El volumen permite incluir archivos *.conf y extender el agente Zabbix usando la función UserParameter |
|
/var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y extender el agente Zabbix usando la función LoadModule | |
/var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Estos nombres de archivos se especifican utilizando las variables de entorno ZBX_TLSCAFILE , ZBX_TLSCRLFILE , ZBX_TLSKEY_FILE y ZBX_TLSPSKFILE |
|
Servidor Zabbix | ||
/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 para verificaciones externas. Es el parámetro ExternalScripts en zabbix_server.conf |
|
/var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y ampliar el servidor Zabbix usando la función LoadModule | |
/var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Estos nombres de 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 certificado de cliente SSL para la autenticación del cliente. Es el parámetro SSLCertLocation en zabbix_server.conf |
|
/var/lib/zabbix/ssl/keys | El volumen se utiliza como ubicación de archivos de clave privada SSL para la autenticación del cliente. 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 del servidor SSL. Es el parámetro SSLCALocation en zabbix_server.conf |
|
/var/lib/zabbix/snmptraps | El volumen se utiliza como ubicación del archivo snmptraps.log. Podría compartirse mediante el contenedor zabbix-snmptraps y heredarse usando la opción volumes_from Docker al crear una nueva instancia del servidor Zabbix. La función de procesamiento de capturas SNMP podría habilitarse usando un volumen compartido y cambiando la variable de entorno ZBX_ENABLE_SNMP_TRAPS a 'true' |
|
/var/lib/zabbix/mibs | El volumen permite agregar nuevos archivos MIB. No admite subdirectorios, todos los MIB deben colocarse en /var/lib/zabbix/mibs |
|
Proxy Zabbix | ||
/usr/lib/zabbix/externalscripts | El volumen es utilizado para verificaciones externas. Es el parámetro ExternalScripts en zabbix_proxy.conf |
|
/var/lib/zabbix/db_data/ | El volumen permite almacenar archivos de bases de datos en dispositivos externos. Compatible solo con proxy Zabbix con SQLite3 | |
/var/lib/zabbix/modules | El volumen permite cargar módulos adicionales y ampliar el servidor Zabbix usando la función LoadModule | |
/var/lib/zabbix/enc | El volumen se utiliza para almacenar archivos relacionados con TLS. Estos nombres de 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 certificado de cliente SSL para la autenticación del cliente. Es el parámetro SSLCertLocation en zabbix_proxy.conf |
|
/var/lib/zabbix/ssl/keys | El volumen se utiliza como ubicación de archivos de clave privada SSL para la autenticación del cliente. 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 del servidor SSL. Es el parámetro SSLCALocation en zabbix_proxy.conf |
|
/var/lib/zabbix/snmptraps | El volumen se utiliza como ubicación del archivo snmptraps.log. Podría ser compartido por el contenedor zabbix-snmptraps y heredado usando la opción volumes_from Docker al crear una nueva instancia del servidor Zabbix. La función de procesamiento de capturas SNMP podría habilitarse usando un volumen compartido y cambiando la variable de entorno ZBX_ENABLE_SNMP_TRAPS a 'true' |
|
/var/lib/zabbix/mibs | El volumen permite agregar nuevos archivos MIB. No admite subdirectorios, todos los MIB deben colocarse en /var/lib/zabbix/mibs |
|
Interfaz web 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 Apache2 |
|
Interfaz web Zabbix basada en 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 cuyo nombre contiene las capturas SNMP recibidas |
|
/var/lib/zabbix/mibs | El volumen permite agregar nuevos archivos MIB. No admite subdirectorios, todos los MIB deben colocarse en /var/lib/zabbix/mibs |
Para obtener 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 la pasarela Java 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_password
3. Iniciar la instancia de la pasarela Java de Zabbix:
docker run --name zabbix-java-gateway -t \
--network=zabbix-net \
--restart unless-stopped \
-d zabbix/zabbix-java-gateway:alpine-7.0-latest
4. 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-latest
5. 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-latest
Ejemplo 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:latest
3. Iniciar la instancia de snmptraps de Zabbix:
docker run --name zabbix-snmptraps -t \
-v /zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \
-v /var/lib/zabbix/mibs:/usr/share/snmp/mibs:ro \
--network=zabbix-net \
-p 162:1162/udp \
--restart unless-stopped \
-d zabbix/zabbix-snmptraps:alpine-7.0-latest
4. 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-latest
5. 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-latest
Ejemplo 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 la pasarela Java de Zabbix usando podman
en Red Hat 8.
1. Crear un nuevo pod con el nombre zabbix
y los puertos expuestos (interfaz web, servidor Zabbix trapper):
2. (opcional) Iniciar el contenedor del agente 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:latest
3. 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_password
4. 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-70
5. Iniciar el contenedor de la pasarela Java de Zabbix:
podman run --name zabbix-java-gateway -t \
--restart=always \
--pod=zabbix \
-d registry.connect.redhat.com/zabbix/zabbix-java-gateway-70
6. 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-70
El pod zabbix
expone el puerto 80/TCP (HTTP) a la máquina host desde el 8080/TCP del contenedor zabbix-web-mysql
.
Alternativamente, Zabbix se puede instalar usando el complemento Docker Compose. Los archivos de redacción para definir y ejecutar componentes Zabbix de múltiples contenedores están disponibles en el repositorio Zabbix Docker oficial en GitHub.
Los archivos de composición oficiales de Zabbix son compatibles con la versión 3 de Docker Compose.
Estos archivos de redacción se agregan como ejemplos; están sobrecargados. Por ejemplo, contienen servidores proxy compatibles con MySQL y SQLite3.
Para obtener archivos de redacción de Docker proporcionados por Zabbix, clone el repositorio:
Cambie a la versión requerida:
Redacte archivos de configuración y cree e inicie contenedores:
Reemplace docker-compose_v3_alpine_mysql_latest.yaml
en el comando anterior con 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 de redacción ejecuta la última versión de los componentes Zabbix 7.0 en Alpine Linux con soporte de base de datos MySQL. |
docker-compose_v3_alpine_mysql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Alpine Linux con soporte de base de datos MySQL. |
docker-compose_v3_alpine_pgsql_latest.yaml |
El archivo de redacción ejecuta la última versión de los componentes Zabbix 7.0 en Alpine Linux con soporte de base de datos PostgreSQL. |
docker-compose_v3_alpine_pgsql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Alpine Linux con soporte de base de datos PostgreSQL. |
docker-compose_v3_ol_mysql_latest.yaml |
El archivo de redacción ejecuta la última versión de los componentes Zabbix 7.0 en Oracle Linux con soporte de base de datos MySQL. |
docker-compose_v3_ol_mysql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Oracle Linux con soporte de base de datos MySQL. |
docker-compose_v3_ol_pgsql_latest.yaml |
El archivo de redacción ejecuta la última versión de los componentes Zabbix 7.0 en Oracle Linux con soporte de base de datos PostgreSQL. |
docker-compose_v3_ol_pgsql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Oracle Linux con soporte de base de datos PostgreSQL. |
docker-compose_v3_ubuntu_mysql_latest.yaml |
El archivo de redacción ejecuta la última versión de los componentes de Zabbix 7.0 en Ubuntu 20.04 con soporte de base de datos MySQL. |
docker-compose_v3_ubuntu_mysql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Ubuntu 20.04 con soporte de base de datos MySQL. |
docker-compose_v3_ubuntu_pgsql_latest.yaml |
El archivo de redacción ejecuta la última versión de los componentes de Zabbix 7.0 en Ubuntu 20.04 con soporte de base de datos PostgreSQL. |
docker-compose_v3_ubuntu_pgsql_local.yaml |
El archivo de redacción construye localmente la última versión de Zabbix 7.0 y ejecuta componentes de Zabbix en Ubuntu 20.04 con soporte de 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 desacoplado.
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á localmente los componentes de Zabbix 7.0 y los ejecutará en modo desacoplado.