[comment]: # translation:outdated

[comment]: # ({e62e1497-e62e1497})
# 5 Инсталација из контејнера

[comment]: # ({/e62e1497-e62e1497})

[comment]: # ({903b489f-a3ac452e})
### Преглед

Овај одељак описује како се имплементира Zabbix помоћу [Docker](#docker) или [Docker Compose](#docker-compose).

Zabbix званично пружа:

- Одвојене Docker слике за сваку Zabbix
компоненту да би се покретале као преносиве и самодовољне контејнере.
- Compose датотеке за дефинисање и покретање
вишеконтејнерских Zabbix компоненти у Docker-у.

::: noteimportant
Од Zabbix-а 6.0, детерминистички окидачи морају бити креирани током инсталације.
Ако је бинарно логговање омогућено за MySQL/MariaDB, ово захтева привилегије суперкорисника или подешавање параметра променљиве/конфигурације *log_bin_trust_function_creators = 1*. Погледајте [Скрипте за креирање базе података](/manual/appendix/install/db_scripts#mysqlmariadb) за упутства како да подесите променљиву.\
Имајте на уму да ако се извршава из конзоле, променљива ће бити подешена само привремено и биће одбачена када се Docker поново покрене.
У овом случају, наставите са радом SQL сервиса, зауставите само zabbix-server сервис покретањем 'docker compose down zabbix-server', а затим 'docker compose up -d zabbix-server'.\
Алтернативно, можете подесити ову променљиву у конфигурационом фајлу.
:::

[comment]: # ({/903b489f-a3ac452e})

[comment]: # ({c5a25716-fba82ded})
#### Изворне датотеке

Изворне Docker датотеке се чувају у Zabbix [званичном репозиторијуму](https://github.com/zabbix/zabbix-docker) на GitHub-у,
где можете да пратите најновије измене датотека или да направите своје слике.

[comment]: # ({/c5a25716-fba82ded})

[comment]: # ({97754c05-f9acea87})
### Докер

Zabbix пружа слике засноване на различитим основним OS сликама. Да бисте добили листу подржаних основних слика оперативног система за одређену Zabbix компоненту, погледајте опис компоненте у [Docker Hub](https://hub.docker.com/u/zabbix). Све Zabbix слике су конфигурисане да поново изграде најновије слике ако се основне слике ажурирају.

#### Инсталација

Да бисте добили слику Zabbix компоненте, покрените:

  docker pull zabbix/zabbix-server-mysql

Замените `zabbix/zabbix-server-mysql` именом потребног Docker репозиторијума.

Ова команда ће преузети најновију стабилну верзију Zabbix компоненте засновану на Alpine Linux оперативном систему. Можете додати [tags](#tags) имену репозиторијума да бисте добили слику засновану на другом оперативном систему или на одређеној главној или споредној верзији Zabbix.

Следећи репозиторијуми су доступни у Docker Hub:

|Component|<|Docker repository|
|-|---------|----------|
|*Zabbix agent*|<|[zabbix/zabbix-agent](https://hub.docker.com/r/zabbix/zabbix-agent/)|
|*Zabbix server*|<|<|
| |with MySQL support |[zabbix/zabbix-server-mysql](https://hub.docker.com/r/zabbix/zabbix-server-mysql/)|
|^|with PostgreSQL support |[zabbix/zabbix-server-pgsql](https://hub.docker.com/r/zabbix/zabbix-server-pgsql/)|
|*Zabbix web interface* |<|<|
| |базирано на Apache2 веб серверу са MySQL подршком|[zabbix/zabbix-web-apache-mysql](https://hub.docker.com/r/zabbix/zabbix-web-apache-mysql/)|
|^|базирано на Apache2 веб серверу са PostgreSQL подршком|[zabbix/zabbix-web-apache-pgsql](https://hub.docker.com/r/zabbix/zabbix-web-apache-pgsql/)|
|^|базирано на Nginx веб серверу са MySQL подршком |[zabbix/zabbix-web-nginx-mysql](https://hub.docker.com/r/zabbix/zabbix-web-nginx-mysql/)|
|^|базирано на Nginx веб серверу са PostgreSQL подршком |[zabbix/zabbix-web-nginx-pgsql](https://hub.docker.com/r/zabbix/zabbix-web-nginx-pgsql/)|
|*Zabbix прокси* |<|<|
| |са SQLite3 подршком |[zabbix/zabbix-proxy-sqlite3](https://hub.docker.com/r/zabbix/zabbix-proxy-sqlite3/)|
|^|са MySQL подршком |[zabbix/zabbix-proxy-mysql](https://hub.docker.com/r/zabbix/zabbix-proxy-mysql/)|
|*Zabbix Java gateway* |<|[zabbix/zabbix-java-gateway](https://hub.docker.com/r/zabbix/zabbix-java-gateway/)|

::: noteclassic
Подршка за SNMP трапове је обезбеђена у посебном
репозиторијуму [zabbix/zabbix-snmptraps](https://hub.docker.com/r/zabbix/zabbix-snmptraps/). Може се повезати са Zabbix сервером и
Zabbix проксијем.
:::

[comment]: # ({/97754c05-f9acea87})

[comment]: # ({3ba623a3-e498c2aa})
#### Ознаке

Званичне слике Zabbix компоненти могу да садрже следеће ознаке:

|Tag|Description|Example|
|--|----------|----|
|latest | Најновија стабилна верзија Zabbix компоненте заснована на Alpine Linux слици. |zabbix-agent:latest |
|<OS>-trunk | Најновија ноћна верзија Zabbix верзије која се тренутно развија на одређеном оперативном систему. <br> <br> **<OS>** - основни оперативни систем. Подржане вредности: <br> *alpine* - Alpine Linux; <br> *ltsc2019* - Windows 10 LTSC 2019 (само агент); <br> *ol* - Oracle Linux; <br> *ltsc2022* - Windows 11 LTSC 2022 (само агент); <br> *ubuntu* - Ubuntu |zabbix-agent:ubuntu-trunk |
|<OS>-latest | Најновија стабилна верзија Zabbix компоненте на одређеном оперативном систему. <br> <br> **<OS>** - основни оперативни систем. Подржане вредности: <br> *alpine* - Alpine Linux; <br> *ltsc2019* - Windows 10 LTSC 2019 (само агент); <br> *ol* - Oracle Linux; <br> *ltsc2022* - Windows 11 LTSC 2022 (само агент); <br> *ubuntu* - Ubuntu|zabbix-agent:ol-latest |
|<OS>-X.X-latest |Најновија споредна верзија Zabbix компоненте одређене главне верзије и оперативног система. <br> <br> **<OS>** - основни оперативни систем. Подржане вредности: <br> *alpine* - Alpine Linux; <br> *ltsc2019* - Windows 10 LTSC 2019 (само агент); <br> *ol* - Oracle Linux; <br> *ltsc2022* - Windows 11 LTSC 2022 (само агент); <br> *ubuntu* - Ubuntu<br><br>**X.X** - главна верзија Zabbix-а (нпр. *6.0*, *7.0*, *7.4*). |zabbix-agent:alpine-7.4-latest |
|<OS>-X.X.* |Најновија споредна верзија Zabbix компоненте одређене главне верзије и оперативног система. <br> <br> **<OS>** - основни оперативни систем. Подржане вредности: <br> *alpine* - Alpine Linux; <br> *ltsc2019* - Windows 10 LTSC 2019 (само агент); <br> *ol* - Oracle Linux; <br> *ltsc2022* - Windows 11 LTSC 2022 (само агент); <br> *ubuntu* - Ubuntu<br><br>**X.X** - главна верзија Zabbix-а (тј. *6.0*, *7.0*, *7.4*). <br><br> **\*** - споредна верзија Zabbix-а |zabbix-agent:alpine-7.4.1|

[comment]: # ({/3ba623a3-e498c2aa})

[comment]: # ({b8cd844f-0b4b68c7})
#### Почетна конфигурација

Након преузимања слика, покрените контејнере извршавањем команде `docker run`, након чега следе додатни аргументи за навођење потребних [променљивих окружења](#environment-variables) и/или [тачака монтирања](#volumes). Неки [примери конфигурације](#examples) су дати у наставку.

::: noteclassic
Да би се омогућила комуникација између Zabbix компоненти, неки портови, као што су 10051/TCP за Zabbix сервер (трапер), 10050/TCP за Zabbix агент, 162/UDP за SNMP хватања и 80/TCP за Zabbix веб интерфејс, биће изложени хост машини. Комплетна листа подразумеваних портова које користе Zabbix компоненте доступна је на страници [Захтеви](/manual/installation/requirements#default-port-numbers). За Zabbix сервер и агент, подразумевани порт се може променити подешавањем ZBX_LISTENPORT [променљива окружења](#environment-variables).
:::

[comment]: # ({/b8cd844f-0b4b68c7})

[comment]: # ({38bd4cdb-de9f41d4})
##### Променљиве окружења

Све слике Zabbix компоненти пружају променљиве окружења за контролу конфигурације.
Подржане променљиве окружења су наведене у [репозиторијуму компоненти](#инсталација).

Ове променљиве окружења су опције из Zabbix конфигурационих датотека, али са различитим начином именовања. На пример, `ZBX_LOGSLOWQUERIES` је једнако `LogSlowQueries` из Zabbix [server](/manual/appendix/config/zabbix_server#logslowqueries) или Zabbix [proxy](/manual/appendix/config/zabbix_proxy#logslowqueries) конфигурационих датотека.

::: noteimportant
Неке опције конфигурације (нпр. `PIDFile` и `LogType`) се не могу мењати.
:::

Следеће променљиве окружења су специфичне за Docker компоненте и не постоје у Zabbix конфигурационим датотекама:

|Variable|Components|Default value |Description|
|--|--|--|------|
|`DB_SERVER_HOST`|Сервер<br>Прокси<br>Веб интерфејс|`mysql-server` за MYSQL <br> `postgres-server` за PostgreSQL | IP или DNS име MySQL или PostgreSQL сервера.|
|`DB_SERVER_PORT`|Сервер<br>Прокси<br>Веб интерфејс|`3306` за MYSQL <br> `5432` за PostgreSQL |Порт MySQL или PostgreSQL сервера.|
|`MYSQL_USER`|Сервер<br>Прокси<br>Веб-интерфејс| `zabbix` | Корисник MySQL базе података.|
|`MYSQL_PASSWORD`|Сервер<br>Прокси<br>Веб интерфејс|`zabbix` |Лозинка за MySQL базу података.|
|`MYSQL_DATABASE`|Сервер<br>Прокси<br>Веб интерфејс|`zabbix` за Zabbix сервер <br> `zabbix_proxy` за Zabbix прокси |Име Zabbix базе података.|
|`POSTGRES_USER`|Сервер<br>Веб интерфејс|`zabbix` |Корисник PostgreSQL базе података.|
|`POSTGRES_PASSWORD`|Сервер<br>Веб интерфејс|`zabbix` |Лозинка за PostgreSQL базу података.|
|`POSTGRES_DB`|Сервер<br>Веб интерфејс|`zabbix` за Zabbix сервер <br> `zabbix_proxy` за Zabbix прокси |Име Zabbix базе података.|
|`PHP_TZ`|Веб-интерфејс|`Европа/Рига`|Временска зона у PHP формату. Комплетна листа подржаних временских зона је доступна на [php.net](http://php.net/manual/en/timezones.php).|
|`ZBX_SERVER_NAME`|Веб интерфејс|`Zabbix Docker`|Видљиво име Zabbix инсталације у горњем десном углу веб интерфејса. |
|`ZBX_JAVAGATEWAY_ENABLE`|Сервер<br>Прокси|`false`|Омогућава комуникацију са Zabbix Java gateway-ом ради прикупљања провера везаних за Јаву.|
|`ZBX_ENABLE_SNMP_TRAPS`|Сервер<br>Прокси|`false` |Омогућава функцију SNMP trap-а. Потребна је инстанца **zabbix-snmptraps** и дељени волумен */var/lib/zabbix/snmptraps* за Zabbix сервер или Zabbix прокси.|

[comment]: # ({/38bd4cdb-de9f41d4})

[comment]: # ({4a57d31e-7d10f7dc})
##### Volumes

Слике омогућавају монтирање томова користећи следеће тачке монтирања:

|Volume|<|Description|
|-|----------|--------------------------------------------|
|**Zabbix агент**|<|<|
| |*/etc/zabbix/zabbix\_agentd.d*|Том омогућава укључивање *\*.conf* датотека и проширивање Zabbix агента помоћу функције `UserParameter`|
|^|*/var/lib/zabbix/modules*|Том омогућава учитавање додатних модула и проширивање Zabbix агента помоћу функције [LoadModule](/manual/extensions/loadablemodules)|
|^|*/var/lib/zabbix/enc*|Том се користи за чување датотека повезаних са TLS-ом. Ова имена датотека су наведена помоћу променљивих окружења `ZBX_TLSCAFILE`, `ZBX_TLSCRLFILE`, `ZBX_TLSKEY_FILE` и `ZBX_TLSPSKFILE`|
|**Zabbix сервер**|<|<|
| |*/usr/lib/zabbix/alertscripts*|Јам се користи за прилагођене скрипте упозорења. То је параметар `AlertScriptsPath` у [zabbix\_server.conf](/manual/appendix/config/zabbix_server)|
|^|*/usr/lib/zabbix/externalscripts*|Јам се користи за [екстерне провере](/manual/config/items/itemtypes/external). То је параметар `ExternalScripts` у [zabbix\_server.conf](/manual/appendix/config/zabbix_server)|
|^|*/var/lib/zabbix/modules*|Запремина омогућава учитавање додатних модула и проширивање Zabbix сервера помоћу функције [LoadModule](/manual/extensions/loadablemodules)|
|^|*/var/lib/zabbix/enc*|Запремина се користи за чување датотека повезаних са TLS-ом. Ова имена датотека су наведена помоћу променљивих окружења `ZBX_TLSCAFILE`, `ZBX_TLSCRLFILE`, `ZBX_TLSKEY_FILE` и `ZBX_TLSPSKFILE`|
|^|*/var/lib/zabbix/ssl/certs*|Запремина се користи као локација датотека SSL сертификата клијента за аутентификацију клијента. То је параметар `SSLCertLocation` у zabbix\_server.conf|
|^|*/var/lib/zabbix/ssl/keys*|Запремина се користи као локација датотека SSL приватног кључа за аутентификацију клијента. То је параметар `SSLKeyLocation` у [zabbix\_server.conf](/manual/appendix/config/zabbix_server)|
|^|*/var/lib/zabbix/ssl/ssl\_ca*|Запремина се користи као локација датотека ауторитета за сертификате (CA) за верификацију сертификата SSL сервера. То је параметар `SSLCALocation` у [zabbix\_server.conf](/manual/appendix/config/zabbix_server)|
|^|*/var/lib/zabbix/snmptraps*|Запремина се користи као локација датотеке snmptraps.log. Може се делити са контејнером zabbix-snmptraps и наслеђивати помоћу опције volumes\_from Docker приликом креирања нове инстанце Zabbix сервера. Функција обраде SNMP замки може се омогућити коришћењем дељене запремине и пребацивањем променљиве окружења `ZBX_ENABLE_SNMP_TRAPS` на 'true'|
|^|*/var/lib/zabbix/mibs*|Запремина омогућава додавање нових MIB датотека. Не подржава поддиректоријуме, све MIB датотеке морају бити смештене у `/var/lib/zabbix/mibs`|
|**Zabbix proxy**|<|<|
| |*/usr/lib/zabbix/externalscripts*|Запремину користе [екстерне провере](/manual/config/items/itemtypes/external). То је параметар `ExternalScripts` у [zabbix\_proxy.conf](/manual/appendix/config/zabbix_proxy)|
|^|*/var/lib/zabbix/db_data/*| Запремина омогућава чување датотека базе података на екстерним уређајима. Подржано само за Zabbix прокси са SQLite3|
|^|*/var/lib/zabbix/modules*|Том омогућава учитавање додатних модула и проширивање Zabbix сервера помоћу функције [LoadModule](/manual/extensions/loadablemodules)|
|^|*/var/lib/zabbix/enc*|Том се користи за чување датотека повезаних са TLS-ом. Ова имена датотека су наведена помоћу променљивих окружења `ZBX_TLSCAFILE`, `ZBX_TLSCRLFILE`, `ZBX_TLSKEY_FILE` и `ZBX_TLSPSKFILE`|
|^|*/var/lib/zabbix/ssl/certs*|Том се користи као локација датотека SSL сертификата клијента за аутентификацију клијента. То је параметар `SSLCertLocation` у [zabbix\_proxy.conf](/manual/appendix/config/zabbix_proxy)|
|^|*/var/lib/zabbix/ssl/keys*|Запремина се користи као локација SSL датотека приватних кључева за аутентификацију клијента. То је параметар `SSLKeyLocation` у [zabbix\_proxy.conf](/manual/appendix/config/zabbix_proxy)|
|^|*/var/lib/zabbix/ssl/ssl\_ca*|Запремина се користи као локација датотека ауторитета за сертификате (CA) за верификацију SSL сертификата сервера. То је параметар `SSLCALocation` у [zabbix\_proxy.conf](/manual/appendix/config/zabbix_proxy)|
|^|*/var/lib/zabbix/snmptraps*|Запремина се користи као локација датотеке snmptraps.log. Може се делити са контејнером zabbix-snmptraps и наслеђивати помоћу опције volumes\_from Docker приликом креирања нове инстанце Zabbix сервера. Функција обраде SNMP трапова може се омогућити коришћењем дељеног волумена и пребацивањем променљиве окружења `ZBX_ENABLE_SNMP_TRAPS` на 'true'|
|^|*/var/lib/zabbix/mibs*|Волумен омогућава додавање нових MIB датотека. Не подржава поддиректоријуме, сви MIB-ови морају бити смештени у `/var/lib/zabbix/mibs`|
|**Zabbix веб интерфејс базиран на Apache2 веб серверу**|<|<|
| |*/etc/ssl/apache2*|Волумен омогућава омогућавање HTTPS-а за Zabbix веб интерфејс. Волумен мора да садржи две датотеке `ssl.crt` и `ssl.key` припремљене за Apache2 SSL везе|
|**Zabbix веб интерфејс базиран на Nginx веб серверу**|<|<|
| |*/etc/ssl/nginx*|Волумен омогућава омогућавање HTTPS-а за Zabbix веб интерфејс. Том мора да садржи две датотеке `ssl.crt`, `ssl.key` и `dhparam.pem` припремљене за Nginx SSL везе|
|**Zabbix snmptraps**|<|<|
| |*/var/lib/zabbix/snmptraps*|Том садржи датотеку дневника `snmptraps.log` са именом примљених SNMP трапова|
|^|*/var/lib/zabbix/mibs*|Том омогућава додавање нових MIB датотека. Не подржава поддиректоријуме, сви MIB-ови морају бити смештени у `/var/lib/zabbix/mibs`|

За додатне информације, погледајте званичне Zabbix репозиторијуме у Docker
Hub-у.

[comment]: # ({/4a57d31e-7d10f7dc})

[comment]: # ({a6f8f116-492bd3ba})
##### Примери

**Пример 1**

Пример показује како покренути Zabbix сервер са MySQL базом података
подршка, Zabbix веб интерфејс базиран на Nginx веб серверу и Zabbix-у
Java gateway.

1\. Креирајте мрежу намењену за контејнере компоненти Zabbix-а:

    docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net

2\. Покрените празну инстанцу MySQL сервера

    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\. Покрените инстанцу Zabbix Java gateway-а

    docker run --name zabbix-java-gateway -t \
          --network=zabbix-net \
          --restart unless-stopped \
          -d zabbix/zabbix-java-gateway:alpine-7.0-latest

4\. Покрените инстанцу Zabbix сервера и повежите инстанцу са креираном
MySQL server инстанца

    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\. Покрените Zabbix веб интерфејс и повежите инстанцу са креираним MySQL-ом
сервер и инстанце Zabbix сервера

    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


**Пример 2**

Пример показује како покренути Zabbix сервер са PostgreSQL-ом
подршка за базе података, Zabbix веб интерфејс базиран на Nginx веб серверу и
SNMP функција замке.

1\. Креирајте мрежу намењену за контејнере компоненти Zabbix-а:

    docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net

2\. Покрените празну инстанцу 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\. Покрените Zabbix snmptraps инстанцу

    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\. Покрените инстанцу Zabbix сервера и повежите инстанцу са креираном
PostgreSQL инстанца сервера

    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\. Покрените Zabbix веб интерфејс и повежите инстанцу са креираном
инстанце PostgreSQL сервера и Zabbix сервера

    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


**Пример 3**

Пример показује како покренути Zabbix сервер са подршком за MySQL базу података,
Zabbix веб интерфејс базиран на Nginx веб серверу и Zabbix Java gateway-у користећи `podman` на Red Hat 8.

1\. Направите нови под са именом `zabbix` и изложеним портовима (веб-интерфејс,
Zabbix server trapper):

    podman pod create --name zabbix -p 80:8080 -p 10051:10051

2\. (опционо) Покрените контејнер Zabbix агента на локацији под-а `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\. Направите директоријум `./mysql/` на хосту и покрените Oracle MySQL сервер
8.0:

    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\. Покрените контејнер 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\. Покрените Zabbix Java Gateway контејнер:

    podman run --name zabbix-java-gateway -t \
          --restart=always \
          --pod=zabbix \
          -d registry.connect.redhat.com/zabbix/zabbix-java-gateway-70

6\. Покрените 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

::: noteclassic
Под `zabbix` открива 80/TCP порт (HTTP) домаћина машини из
8080/TCP of `zabbix-web-mysql` контејнера.
:::

[comment]: # ({/a6f8f116-492bd3ba})

[comment]: # ({e72d1151-c443c22e})
### Docker Compose
Алтернативно, Zabbix се може инсталирати помоћу Docker Compose додатка.
Compose датотеке за дефинисање и покретање Zabbix компоненти са више контејнера су
доступне у званичном [Zabbix Docker репозиторијуму](https://github.com/zabbix/zabbix-docker) на GitHub-у.

::: noteimportant
Званичне Zabbix датотеке за компоновање подржавају верзију 3 Docker Compose-а.
:::

Ове датотеке за компоновање су додате као примери; оне су преоптерећене.
На пример, садрже проксије са подршком за MySQL и SQLite3.

Да бисте добили Docker compose датотеке које пружа Zabbix, клонирајте репозиторијум:

  git clone https://github.com/zabbix/zabbix-docker.git

Пређите на потребну верзију:

  git checkout 7.4

Compose конфигурационе датотеке и креирајте и покрените контејнере:

  docker compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up

Замените `docker-compose_v3_alpine_mysql_latest.yaml` у горњој команди потребном конфигурационом датотеком.

Доступне су следеће опције:

|File name|Description|
|--|--------|
|`docker-compose_v3_alpine_mysql_latest.yaml`|Compose датотека покреће најновију верзију Zabbix 7.4 компоненти на Alpine Linux-у са подршком за MySQL базу података.|
|`docker-compose_v3_alpine_mysql_local.yaml`|Датотека за компоновање локално гради најновију верзију Zabbix-а 7.4 и покреће Zabbix компоненте на Alpine Linux-у са подршком за MySQL базу података.|
|`docker-compose_v3_alpine_pgsql_latest.yaml`|Датотека за компоновање покреће најновију верзију Zabbix-а 7.4 компоненти на Alpine Linux-у са подршком за PostgreSQL базу података.|
|`docker-compose_v3_alpine_pgsql_local.yaml`|Датотека за компоновање локално гради најновију верзију Zabbix-а 7.4 и покреће Zabbix компоненте на Alpine Linux-у са подршком за PostgreSQL базу података.|
|`docker-compose_v3_ol_mysql_latest.yaml`|Датотека за компоновање покреће најновију верзију Zabbix-а 7.4 компоненти на Oracle Linux-у са подршком за MySQL базу података.|
|`docker-compose_v3_ol_mysql_local.yaml`|Датотека за писање локално гради најновију верзију Zabbix-а 7.4 и покреће Zabbix компоненте на Oracle Linux-у са подршком за MySQL базу података.|
|`docker-compose_v3_ol_pgsql_latest.yaml`|Датотека за писање покреће најновију верзију Zabbix 7.4 компоненти на Oracle Linux-у са подршком за PostgreSQL базу података.|
|`docker-compose_v3_ol_pgsql_local.yaml`|Датотека за писање локално гради најновију верзију Zabbix 7.4 и покреће Zabbix компоненте на Oracle Linux-у са подршком за PostgreSQL базу података.|
|`docker-compose_v3_ubuntu_mysql_latest.yaml`|Датотека за писање покреће најновију верзију Zabbix 7.4 компоненти на Ubuntu 22.04 са подршком за MySQL базу података.|
|`docker-compose_v3_ubuntu_mysql_local.yaml`|Датотека за компоновање локално гради најновију верзију Zabbix-а 7.4 и покреће Zabbix компоненте на Ubuntu 22.04 са подршком за MySQL базу података.|
|`docker-compose_v3_ubuntu_pgsql_latest.yaml`|Датотека за компоновање покреће најновију верзију Zabbix 7.4 компоненти на Ubuntu 22.04 са подршком за PostgreSQL базу података.|
|`docker-compose_v3_ubuntu_pgsql_local.yaml`|Датотека за компоновање локално гради најновију верзију Zabbix-а 7.4 и покреће Zabbix компоненте на Ubuntu 22.04 са подршком за PostgreSQL базу података.|

[comment]: # ({/e72d1151-c443c22e})

[comment]: # ({549510ed-52e39127})
#### Складиштење

Compose датотеке су конфигурисане да подржавају локално складиштење на машини домаћина.
Docker Compose ће креирати директоријум `zbx_env` у директоријуму са compose датотеком када покренете Zabbix компоненте користећи compose датотеку.
Директоријум ће садржати исту структуру као што је описано у секцији [Volumes](#Volumes) и директоријуму за складиштење базе података.

Постоје и томови у режиму само за читање за датотека `/etc/localtime` и `/etc/timezone`.

[comment]: # ({/549510ed-52e39127})

[comment]: # ({ac4ddf91-0be3c140})
#### Променљиве окружења

Променљиве датотеке имају следећу структуру именовања: `.env_<type of component>` и налазе се у *env_vars* [директоријуму](https://github.com/zabbix/zabbix-docker/tree/trunk/env_vars).
Погледајте [променљиве окружења](#environment-variables) за детаље о именовању променљивих и доступном избору.

[comment]: # ({/ac4ddf91-0be3c140})

[comment]: # ({c967f5eb-ad55959c})
#### Примери

**Пример 1**

git checkout 7.4
docker compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d

Команда ће преузети најновије Zabbix 7.4 слике за сваку Zabbix компоненту и покренути их у режиму одвајања.

::: noteimportant
Не заборавите да преузмете датотеке `.env_<type of component>` са званичног Zabbix репозиторијума github.com са датотекама за композовање.
:::

**Пример 2**

  git checkout 7.4
  docker compose -f ./docker-compose_v3_ubuntu_mysql_local.yaml up -d

Команда ће преузети основну слику Ubuntu 24.04 (noble), затим локално изградити Zabbix 7.4 компоненте и покренути их у режиму одвајања.

[comment]: # ({/c967f5eb-ad55959c})
