Áú»¢¶Ä²©

This is the documentation page for an unsupported version of Áú»¢¶Ä²©.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

5 Konteyn?rlardan kurulum

Docker

Áú»¢¶Ä²©, da??t?m ve g¨¹ncelleme prosed¨¹r¨¹n¨¹ h?zland?rmak i?in her bir Áú»¢¶Ä²© bile?eninin ta??nabilir ve kendine yeterli konteyn?r?n? imajlar? olarak sa?lar.

Áú»¢¶Ä²© bile?enleri MySQL ve PostgreSQL veritaban? deste?i, Apache2 ve Nginx web sunucusu deste?i ile birlikte gelir. Bu imajlar farkl? imajlara ayr?lm??t?r.

Docker temel imajlar?

Áú»¢¶Ä²© bile?enleri Ubuntu ve Alpine Linux temel imajlar?nda sa?lanmaktad?r:

?maj ³§¨¹°ù¨¹³¾
son
trusty

T¨¹m imajlar, temel imajlar g¨¹ncellenirse en yeni imajlar? yeniden in?a edecek ?ekilde yap?land?r?lm??t?r.

Docker dosya kaynaklar?

Herkes, ¨¹zerindeki Áú»¢¶Ä²© kullanarak Docker dosya de?i?ikliklerini izleyebilir. Projeyi ?atallayabilir veya resmi Docker dosyalar?na dayal? olarak kendi imajlar?n?z? olu?turabilirsiniz.

Yap?

T¨¹m Áú»¢¶Ä²© bile?enleri a?a??daki Docker depolar? i?inde bulunur:

  • Áú»¢¶Ä²© arac?s? -
  • Áú»¢¶Ä²© sunucusu
    • MySQL veritaban? destekli Áú»¢¶Ä²© sunucusu -
    • PostgreSQL veritaban? destekli Áú»¢¶Ä²© sunucusu -
  • Áú»¢¶Ä²© web-aray¨¹z¨¹
    • MySQL veritaban? destekli ve Apache2 web sunucusuna dayal? Áú»¢¶Ä²© web-aray¨¹z¨¹ -
    • MySQL veritaban? destekli ve Nginx web sunucusuna dayal? Áú»¢¶Ä²© web-aray¨¹z¨¹ -
    • PostgreSQL veritaban? destekli ve Nginx web sunucusuna dayal? Áú»¢¶Ä²© web-aray¨¹z¨¹ -
  • Áú»¢¶Ä²© vekil sunucusu
    • SQLite3 veritaban? destekli Áú»¢¶Ä²© vekil sunucusu -
    • MySQL veritaban? destekli Áú»¢¶Ä²© vekil sunucusu -
  • Áú»¢¶Ä²© Java A? Ge?idi -

Ayr?ca SNMP trap deste?i de vard?r. Yaln?zca Ubuntu Trusty'e dayal? ek depo () olarak sa?lanmaktad?r. Áú»¢¶Ä²© sunucusu ve Áú»¢¶Ä²© vekil sunucusu ile ba?lant?l? olabilir.

³§¨¹°ù¨¹³¾±ô±ð°ù

Her Áú»¢¶Ä²© bile?enleri deposu a?a??daki etiketleri i?erir:

  • latest - Alpine Linux imaj? temelli bir Áú»¢¶Ä²© bile?eninin en son kararl? s¨¹r¨¹m¨¹
  • alpine-latest - Alpine Linux imaj? temelli bir Áú»¢¶Ä²© bile?eninin en son kararl? s¨¹r¨¹m¨¹
  • ubuntu-latest - Ubuntu imaj? temelli bir Áú»¢¶Ä²© bile?eninin en son kararl? s¨¹r¨¹m¨¹
  • alpine-3.2-latest - Alpine Linux imaj? temelli bir Áú»¢¶Ä²© 3.2 bile?eninin en son alt s¨¹r¨¹m¨¹
  • ubuntu-3.2-latest - Ubuntu imaj? temelli bir Áú»¢¶Ä²© 3.2 bile?eninin en son alt s¨¹r¨¹m¨¹
  • alpine-3.2.* - Alpine Linux imaj? temelli bir Áú»¢¶Ä²© 3.2 bile?eninin farkl? alt s¨¹r¨¹mleri, burada * Áú»¢¶Ä²© bile?eninin alt s¨¹r¨¹m¨¹d¨¹r
  • ubuntu-3.2.* - Ubuntu imaj? temelli bir Áú»¢¶Ä²© 3.2 bile?eninin farkl? alt s¨¹r¨¹mleri, burada * Áú»¢¶Ä²© bile?eninin alt s¨¹r¨¹m¨¹d¨¹r

Kullan?m

Ortam de?i?kenleri

T¨¹m Áú»¢¶Ä²© bile?en imajlar? yap?land?rmay? kontrol etmek i?in ortam de?i?kenleri sa?lar. Bu ortam de?i?kenleri, her bir bile?en deposunda listelenir. Bu ortam de?i?kenleri, Áú»¢¶Ä²© yap?land?rma dosyalar?ndan gelen se?eneklerdir ancak adland?rma y?ntemi farkl?d?r. ?rne?in, ZBX_LOGSLOWQUERIES de?i?keni Áú»¢¶Ä²© sunucusu ve Áú»¢¶Ä²© vekil sunucusu yap?land?rma dosyalar?ndaki LogSlowQueries de?i?kenine e?ittir.

Baz? yap?land?rma se?eneklerinin de?i?tirilmesine izin verilmez. ?rne?in, PIDFile ve LogType.

Baz? bile?enler, resmi Áú»¢¶Ä²© yap?land?rma dosyalar?nda bulunmayan ?zel ortam de?i?kenlerine sahiptir:

De?i?ken Bile?enler A??klama
DB_SERVER_HOST Sunucu
Vekil sunucu
Web aray¨¹z¨¹
Bu de?i?ken, MySQL veya PostgreSQL sunucusunun IP veya DNS ad?d?r.
?ntan?ml? de?er, MySQL ve PostgreSQL i?in s?ras?yla mysql-server ve postgres-server adlar?d?r
DB_SERVER_PORT Sunucu
Vekil sunucu
Web aray¨¹z¨¹
Bu de?i?ken, MySQL veya PostgreSQL sunucusunun portudur.
?ntan?ml? olarak, de?er s?ras?yla '3306' veya '5432' ?eklindedir.
MYSQL_USER Sunucu
Vekil sunucu
Web aray¨¹z¨¹
MySQL veritaban? kullan?c?s?.
?ntan?ml? olarak de?er 'zabbix' ?eklindedir.
MYSQL_PASSWORD Sunucu
Vekil sunucu
Web aray¨¹z¨¹
MySQL veritaban? parolas?.
?ntan?ml? olarak de?er 'zabbix' ?eklindedir.
MYSQL_DATABASE Sunucu
Vekil sunucu
Web aray¨¹z¨¹
Áú»¢¶Ä²© veritaban? ad?.
?ntan?ml? olarak de?er, Áú»¢¶Ä²© sunucusu i?in 'zabbix' ve Áú»¢¶Ä²© vekil sunucusu i?in 'zabbix_proxy' ?eklindedir.
POSTGRES_USER Sunucu
Web aray¨¹z¨¹
PostgreSQL veritaban? kullan?c?s?.
?ntan?ml? olarak de?er 'zabbix' ?eklindedir.
POSTGRES_PASSWORD Sunucu
Web aray¨¹z¨¹
PostgreSQL veritaban? parolas?.
?ntan?ml? olarak de?er 'zabbix' ?eklindedir.
POSTGRES_DB Sunucu
Web aray¨¹z¨¹
Áú»¢¶Ä²© veritaban? ad?.
?ntan?ml? olarak de?er, Áú»¢¶Ä²© sunucusu i?in 'zabbix' ve Áú»¢¶Ä²© vekil sunucusu i?in 'zabbix_proxy' ?eklindedir.
TZ Web aray¨¹z¨¹ PHP bi?iminde saat dilimi. Desteklenen saat dilimlerinin tam listesi ¨¹zerinden edinilebilir.
?ntan?ml? olarak, de?er 'Europe/Riga' ?eklindedir.
ZBX_SERVER_NAME Web aray¨¹z¨¹ Web aray¨¹z¨¹n¨¹n sa? ¨¹st k??esindeki g?r¨¹n¨¹r Áú»¢¶Ä²© kurulum ad?.
?ntan?ml? olarak, de?er 'Áú»¢¶Ä²© Docker' ?eklindedir
ZBX_JAVAGATEWAY_ENABLE Sunucu
Vekil sunucu
Java ile ilgili kontrolleri toplamak i?in Áú»¢¶Ä²© Java a? ge?idiyle ileti?im kurmay? sa?lar.
?ntan?ml? olarak, de?er "false" ?eklindedir
ZBX_ENABLE_SNMP_TRAPS Sunucu
Vekil sunucu
SNMP trap ?zelli?ini etkinle?tirir. It requires Áú»¢¶Ä²© sunucusu veya Áú»¢¶Ä²© vekil sunucusu i?in zabbix-snmptraps ?rne?i ve /var/lib/zabbix/snmptraps payla??ml? disk birimi gerektirir.
Disk birimleri

?majlar baz? ba?lant? noktalar?n? kullanmaya izin verir. Bu ba?lant? noktalar? farkl?d?r ve Áú»¢¶Ä²© bile?en t¨¹r¨¹ne g?re de?i?ir:

Disk birimi A??klama
Áú»¢¶Ä²© arac?s?
/etc/zabbix/zabbix_agentd.d Bu disk birimi, *.conf dosyalar?n? i?ermesine ve UserParameter ?zelli?ini kullanarak Áú»¢¶Ä²© arac?s?n?n geni?letilmesine izin verir
/var/lib/zabbix/modules Bu disk birimi, ek mod¨¹lleri y¨¹klemeye ve LoadModule ?zelli?ini kullanarak Áú»¢¶Ä²© arac?s?n?n geni?letilmesine izin verir
/var/lib/zabbix/enc Bu disk birimi, TLS ile ilgili dosyalar? depolamak i?in kullan?l?r. Bu dosya isimleri, ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE ve ZBX_TLSPSKFILE ortam de?i?kenleri kullan?larak belirtilir
Áú»¢¶Ä²© server
/usr/lib/zabbix/alertscripts The volume is used for custom alert scripts. It is the AlertScriptsPath parameter in zabbix_server.conf
/usr/lib/zabbix/externalscripts The volume is used by external checks. It is the ExternalScripts parameter in zabbix_server.conf
/var/lib/zabbix/modules The volume allows to load additional modules and extend Áú»¢¶Ä²© server using the LoadModule feature
/var/lib/zabbix/enc The volume is used to store TLS related files. These file names are specified using ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE and ZBX_TLSPSKFILE environment variables
/var/lib/zabbix/ssl/certs The volume is used as location of SSL client certificate files for client authentication. It is the SSLCertLocation parameter in zabbix_server.conf
/var/lib/zabbix/ssl/keys The volume is used as location of SSL private key files for client authentication. It is the SSLKeyLocation parameter in zabbix_server.conf
/var/lib/zabbix/ssl/ssl_ca The volume is used as location of certificate authority (CA) files for SSL server certificate verification. It is the SSLCALocation parameter in zabbix_server.conf
/var/lib/zabbix/snmptraps The volume is used as location of snmptraps.log file. It could be shared by zabbix-snmptraps container and inherited using the volumes_from Docker option while creating a new instance of Áú»¢¶Ä²© server. SNMP trap processing feature could be enabled by using shared volume and switching the ZBX_ENABLE_SNMP_TRAPS environment variable to 'true'
/var/lib/zabbix/mibs The volume allows to add new MIB files. It does not support subdirectories, all MIBs must be placed in /var/lib/zabbix/mibs
Áú»¢¶Ä²© proxy
/usr/lib/zabbix/externalscripts The volume is used by external checks. It is the ExternalScripts parameter in zabbix_proxy.conf
/var/lib/zabbix/modules The volume allows to load additional modules and extend Áú»¢¶Ä²© server using the LoadModule feature
/var/lib/zabbix/enc The volume is used to store TLS related files. These file names are specified using ZBX_TLSCAFILE, ZBX_TLSCRLFILE, ZBX_TLSKEY_FILE and ZBX_TLSPSKFILE environment variables
/var/lib/zabbix/ssl/certs The volume is used as location of SSL client certificate files for client authentication. It is the SSLCertLocation parameter in zabbix_proxy.conf
/var/lib/zabbix/ssl/keys The volume is used as location of SSL private key files for client authentication. It is the SSLKeyLocation parameter in zabbix_proxy.conf
/var/lib/zabbix/ssl/ssl_ca The volume is used as location of certificate authority (CA) files for SSL server certificate verification. It is the SSLCALocation parameter in zabbix_proxy.conf
/var/lib/zabbix/snmptraps The volume is used as location of snmptraps.log file. It could be shared by the zabbix-snmptraps container and inherited using the volumes_from Docker option while creating a new instance of Áú»¢¶Ä²© server. SNMP trap processing feature could be enabled by using shared volume and switching the ZBX_ENABLE_SNMP_TRAPS environment variable to 'true'
/var/lib/zabbix/mibs The volume allows to add new MIB files. It does not support subdirectories, all MIBs must be placed in /var/lib/zabbix/mibs
Áú»¢¶Ä²© web interface based on Apache2 web server
/etc/ssl/apache2 The volume allows to enable HTTPS for Áú»¢¶Ä²© web interface. The volume must contain the two ssl.crt and ssl.key files prepared for Apache2 SSL connections
Áú»¢¶Ä²© web interface based on Nginx web server
/etc/ssl/nginx The volume allows to enable HTTPS for Áú»¢¶Ä²© web interface. The volume must contain the two ssl.crt, ssl.key files and dhparam.pem prepared for Nginx SSL connections
Áú»¢¶Ä²© snmptraps
/var/lib/zabbix/snmptraps The volume contains the snmptraps.log log file named with received SNMP traps
/var/lib/zabbix/mibs The volume allows to add new MIB files. It does not support subdirectories, all MIBs must be placed in /var/lib/zabbix/mibs

For additional information use Áú»¢¶Ä²© official repositories in Docker Hub.

Kullan?m ?rnekleri

** ?rnek 1 **

Bu ?rnek, MySQL veritaban? deste?i olan Áú»¢¶Ä²© sunucusunu, Nginx web sunucusuna dayanan Áú»¢¶Ä²© web aray¨¹z¨¹ ve Áú»¢¶Ä²© Java a? ge?idinin nas?l ?al??t?r?laca??n? g?stermektedir.

1. Bo? MySQL sunucu ?rne?i ?al??t?r?n

# 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" \
             -d mysql:5.7
             --character-set-server=utf8 --collation-server=utf8_bin

2. Áú»¢¶Ä²© Java a? ge?idi ?rne?i ?al??t?r?n

# docker run --name zabbix-java-gateway -t \
             -d zabbix/zabbix-java-gateway:latest

3. Áú»¢¶Ä²© sunucu ?rne?i ?al??t?r?n ve bu ?rne?i olu?turulan MySQL sunucu ?rne?iyle ba?lay?n

# 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" \
             --link mysql-server:mysql \
             --link zabbix-java-gateway:zabbix-java-gateway \
             -p 10051:10051 \
             -d zabbix/zabbix-server-mysql:latest

Áú»¢¶Ä²© server instance exposes 10051/TCP port (Áú»¢¶Ä²© trapper) to host machine.

4. Start Áú»¢¶Ä²© web interface and link the instance with created MySQL server and Áú»¢¶Ä²© server instances

# docker run --name zabbix-web-nginx-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" \
             --link mysql-server:mysql \
             --link zabbix-server-mysql:zabbix-server \
             -p 80:80 \
             -d zabbix/zabbix-web-nginx-mysql:latest

Áú»¢¶Ä²© web interface instance exposes 80/TCP port (HTTP) to host machine.

** Example 2 **

The example demonstrates how to run Áú»¢¶Ä²© server with PostgreSQL database support, Áú»¢¶Ä²© web interface based on the Nginx web server and SNMP trap feature.

1. Start empty PostgreSQL server instance

# docker run --name postgres-server -t \
             -e POSTGRES_USER="zabbix" \
             -e POSTGRES_PASSWORD="zabbix" \
             -e POSTGRES_DB="zabbix_pwd" \
             -d postgres:latest

2. Start Áú»¢¶Ä²© snmptraps instance

# 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 \
             -p 162:162/udp \
             -d zabbix/zabbix-snmptraps:latest

Áú»¢¶Ä²© snmptrap instance exposes the 162/UDP port (SNMP traps) to host machine.

3. Start Áú»¢¶Ä²© server instance and link the instance with created PostgreSQL server instance

# docker run --name zabbix-server-pgsql -t \
             -e DB_SERVER_HOST="postgres-server" \
             -e POSTGRES_USER="zabbix" \
             -e POSTGRES_PASSWORD="zabbix" \
             -e POSTGRES_DB="zabbix_pwd" \
             -e ZBX_ENABLE_SNMP_TRAPS="true" \
             --link postgres-server:postgres \
             -p 10051:10051 \
             --volumes-from zabbix-snmptraps \
             -d zabbix/zabbix-server-pgsql:latest

Áú»¢¶Ä²© server instance exposes the 10051/TCP port (Áú»¢¶Ä²© trapper) to host machine.

4. Start Áú»¢¶Ä²© web interface and link the instance with created PostgreSQL server and Áú»¢¶Ä²© server instances

# docker run --name zabbix-web-nginx-pgsql -t \
             -e DB_SERVER_HOST="postgres-server" \
             -e POSTGRES_USER="zabbix" \
             -e POSTGRES_PASSWORD="zabbix" \
             -e POSTGRES_DB="zabbix_pwd" \
             --link postgres-server:postgres \
             --link zabbix-server-pgsql:zabbix-server \
             -p 443:443 \
             -v /etc/ssl/nginx:/etc/ssl/nginx:ro \
             -d zabbix/zabbix-web-nginx-pgsql:latest

Áú»¢¶Ä²© web interface instance exposes the 443/TCP port (HTTPS) to host machine.
Directory /etc/ssl/nginx must contain certificate with required name.

Docker Compose

Áú»¢¶Ä²© provides compose files also for defining and running multi-container Áú»¢¶Ä²© components in Docker. These compose files are available in Áú»¢¶Ä²© docker official repository on github.com: . These compose files are added as examples, they are overloaded. For example, they contain proxies with MySQL and SQLite3 support.

There are a few different versions of compose files:

File name Description
docker-compose_v2_alpine_mysql_latest.yaml The compose file runs the latest version of Áú»¢¶Ä²© 3.2 components on Alpine Linux with MySQL database support.
docker-compose_v2_alpine_mysql_local.yaml The compose file locally builds the latest version of Áú»¢¶Ä²© 3.2 and runs Áú»¢¶Ä²© components on Alpine Linux with MySQL database support.
docker-compose_v2_alpine_pgsql_latest.yaml The compose file runs the latest version of Áú»¢¶Ä²© 3.2 components on Alpine Linux with PostgreSQL database support.
docker-compose_v2_alpine_pgsql_local.yaml The compose file locally builds the latest version of Áú»¢¶Ä²© 3.2 and runs Áú»¢¶Ä²© components on Alpine Linux with PostgreSQL database support.
docker-compose_v2_ubuntu_mysql_latest.yaml The compose file runs the latest version of Áú»¢¶Ä²© 3.2 components on Ubuntu 14.04 with MySQL database support.
docker-compose_v2_ubuntu_mysql_local.yaml The compose file locally builds the latest version of Áú»¢¶Ä²© 3.2 and runs Áú»¢¶Ä²© components on Ubuntu 14.04 with MySQL database support.
docker-compose_v2_ubuntu_pgsql_latest.yaml The compose file runs the latest version of Áú»¢¶Ä²© 3.2 components on Ubuntu 14.04 with PostgreSQL database support.
docker-compose_v2_ubuntu_pgsql_local.yaml The compose file locally builds the latest version of Áú»¢¶Ä²© 3.2 and runs Áú»¢¶Ä²© components on Ubuntu 14.04 with PostgreSQL database support.

Available Docker compose files support only version 2 of Docker Compose.

Storage

Compose files are configured to support local storage on a host machine. Docker Compose will create a zbx_env directory in the folder with the compose file when you run Áú»¢¶Ä²© components using the compose file. The directory will contain the same structure as described above in the Volumes section and directory for database storage.

There are also volumes in read-only mode for /etc/localtime and /etc/timezone files.

Ortam dosyalar?

In the same directory with compose files on github.com you can find files with default environment variables for each component in compose file. These environment files are named like .env_<type of component>.

?rnekler

** ?rnek 1 **

# docker-compose -f ./docker-compose_v2_alpine_mysql_latest.yaml up -d

Komut, her Áú»¢¶Ä²© bile?eni i?in en son Áú»¢¶Ä²© 3.2 imajlar?n? indirecek ve bunlar? detach kipinde ?al??t?racakt?r.

github.com'daki resmi Áú»¢¶Ä²© deposundan .env_<bile?en t¨¹r¨¹> dosyalar?n? indirmeyi unutmay?n.

** ?rnek 2 **

# docker-compose -f ./docker-compose_v2_ubuntu_mysql_local.yaml up -d

Komut, Ubuntu 14.04 temel imaj?n? indirecek, sonra Áú»¢¶Ä²© 3.2 bile?enlerini yerel olarak in?a edecek ve bunlar? detach kipinde ?al??t?racakt?r.