This is a translation of the original English documentation page. Help us make it better.

5 התקנה מקונטיינרים

דוקר

Zabbix מספקת תמונות Docker עבור כל Zabbix רכיב כמכולות ניידות ועצמאיות כדי להאיץ הליך פריסה ועדכון.

רכיבי Zabbix מגיעים עם תמיכה במסד הנתונים MySQL ו-PostgreSQL, תמיכה בשרתי אינטרנט Apache2 ו-Nginx. תמונות אלו מופרדות ל תמונות שונות.

::: שימו לב חשוב מאז Zabbix 6.0, יש ליצור טריגרים דטרמיניסטים במהלך ההתקנה. אם רישום בינארי מופעל עבור MySQL/MariaDB, הדבר דורש הרשאות משתמש-על או הגדרת פרמטר המשתנה/תצורה log_bin_trust_function_creators = 1. ראה סקריפטים ליצירת מסד נתונים לקבלת הוראות כיצד להגדיר את המשתנה.
שימו לב שאם מבצעים ממסוף, המשתנה יוגדר רק באופן זמני ויוסר כאשר Docker יופעל מחדש. במקרה זה, השאר את שירות ה-SQL שלך פועל, הפסק רק את שירות zabbix-server על ידי הפעלת 'docker compose down zabbix-server' ולאחר מכן 'docker compose up -d zabbix-server'.
לחלופין, אתה יכול להגדיר משתנה זה בקובץ התצורה. :::

תמונות בסיס Docker

רכיבי Zabbix מסופקים על בסיס Ubuntu, Alpine Linux ו- CentOS תמונות:

תמונה גרסה
alpine 3.16
ubuntu 22.04 (jammy)
centos 8

כל התמונות מוגדרות לבנות מחדש את התמונות העדכניות ביותר אם ישנן תמונות בסיס מְעוּדכָּן.

מקורות קבצי Docker

כולם יכולים לעקוב אחר שינויים בקובץ Docker באמצעות ה- Zabbix רשמי מאגר על github.com. אתה יכול לחלק את הפרויקט או לעשות את שלך תמונות משלו המבוססות על קבצי Docker הרשמיים.

מבנה

כל רכיבי Zabbix זמינים ב-Docker הבא מאגרים:

בנוסף יש תמיכה במלכודות SNMP. זה מסופק כתוספת מאגר (zabbix/zabbix-snmptraps) מבוסס על Ubuntu Trusty בלבד. זה יכול להיות מקושר לשרת Zabbix ו פרוקסי של Zabbix.

גרסאות

כל מאגר של רכיבי Zabbix מכיל את התגים הבאים:

  • האחרון - הגרסה היציבה האחרונה של רכיב Zabbix המבוסס על תמונת לינוקס אלפינית
  • alpine-latest - הגרסה היציבה האחרונה של רכיב Zabbix מבוסס על תמונת Alpine Linux
  • ubuntu-latest - הגרסה היציבה האחרונה של רכיב מבוסס Zabbix על תמונת אובונטו
  • alpine-6.0-latest - הגרסה המשנית האחרונה של רכיב Zabbix 6.0 מבוסס על תמונת Alpine Linux
  • ubuntu-6.0-latest - הגרסה המשנית האחרונה של רכיב Zabbix 6.0 מבוסס על תמונת אובונטו
  • alpine-6.0.* - גרסאות משניות שונות של רכיב Zabbix 6.0 מבוסס על תמונת Alpine Linux, כאשר * היא הגרסה המשנית של רכיב Zabbix
  • ubuntu-6.0.* - גרסאות משניות שונות של רכיב Zabbix 6.0 מבוסס על תמונת אובונטו, כאשר * היא הגרסה המשנית של Zabbix רְכִיב

Initial configuration

After downloading the images, start the containers by executing docker run command followed by additional arguments to specify required environment variables and/or mount points. Some configuration examples are provided below.

Zabbix must not be run as PID1/as an init process in containers.

משתני סביבה

כל התמונות של רכיבי Zabbix מספקות משתני סביבה לשליטה תְצוּרָה. משתני סביבה אלו מפורטים בכל רכיב מאגר. משתני סביבה אלו הם אופציות של Zabbix קבצי תצורה, אך עם שיטת שמות שונה. לדוגמה, ZBX_LOGSLOWQUERIES שווה ל-LogSlowQueries משרת Zabbix ו- קבצי תצורת פרוקסי של Zabbix.

::: שימו לב חשוב חלק מאפשרויות התצורה אינן מורשות לעשות זאת שינוי. לדוגמה, PIDFile ו-LogType. :::

לחלק מהרכיבים יש משתני סביבה ספציפיים, שאין להם קיימים בקובצי התצורה הרשמיים של Zabbix:

משתנה רכיבים תיאור
DB_SERVER_HOST שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא שם IP או DNS של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא mysql-server או postgres-server עבור MySQL או PostgreSQL בהתאמה
DB_SERVER_PORT שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא יציאה של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא '3306' או '5432' בהתאמה.
MYSQL_USER שרת
פרוקסי
ממשק אינטרנט
משתמש במסד נתונים MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_PASSWORD שרת
פרוקסי
ממשק אינטרנט
סיסמת מסד נתונים של MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_DATABASE שרת
פרוקסי
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
POSTGRES_USER שרת
ממשק אינטרנט
משתמש במסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_PASSWORD שרת
ממשק אינטרנט
סיסמת מסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_DB שרת
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
PHP_TZ ממשק אינטרנט אזור זמן בפורמט PHP. רשימה מלאה של אזורי זמן נתמכים זמינה ב-php.net.
כברירת מחדל, הערך הוא 'אירופה/ריגה'.
ZBX_SERVER_NAME ממשק אינטרנט שם התקנת Zabbix גלוי בפינה הימנית העליונה של ממשק האינטרנט.
כברירת מחדל, הערך הוא 'Zabbix Docker'
ZBX_JAVAGATEWAY_ENABLE שרת
פרוקסי
מאפשר תקשורת עם Zabbix Java gateway כדי לאסוף בדיקות הקשורות ל-Java.
כברירת מחדל, הערך הוא "false"
ZBX_ENABLE_SNMP_TRAPS שרת
פרוקסי
מאפשר תכונת SNMP trap. זה דורש מופע zabbix-snmptraps ונפח משותף /var/lib/zabbix/snmptraps לשרת Zabbix או ל-Proxy Zabbix.
משתני סביבה

כל התמונות של רכיבי Zabbix מספקות משתני סביבה לשליטה תְצוּרָה. משתני סביבה אלו מפורטים בכל רכיב מאגר. משתני סביבה אלו הם אופציות של Zabbix קבצי תצורה, אך עם שיטת שמות שונה. לדוגמה, ZBX_LOGSLOWQUERIES שווה ל-LogSlowQueries משרת Zabbix ו- קבצי תצורת פרוקסי של Zabbix.

::: שימו לב חשוב חלק מאפשרויות התצורה אינן מורשות לעשות זאת שינוי. לדוגמה, PIDFile ו-LogType. :::

לחלק מהרכיבים יש משתני סביבה ספציפיים, שאין להם קיימים בקובצי התצורה הרשמיים של Zabbix:

משתנה רכיבים תיאור
DB_SERVER_HOST שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא שם IP או DNS של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא mysql-server או postgres-server עבור MySQL או PostgreSQL בהתאמה
DB_SERVER_PORT שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא יציאה של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא '3306' או '5432' בהתאמה.
MYSQL_USER שרת
פרוקסי
ממשק אינטרנט
משתמש במסד נתונים MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_PASSWORD שרת
פרוקסי
ממשק אינטרנט
סיסמת מסד נתונים של MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_DATABASE שרת
פרוקסי
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
POSTGRES_USER שרת
ממשק אינטרנט
משתמש במסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_PASSWORD שרת
ממשק אינטרנט
סיסמת מסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_DB שרת
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
PHP_TZ ממשק אינטרנט אזור זמן בפורמט PHP. רשימה מלאה של אזורי זמן נתמכים זמינה ב-php.net.
כברירת מחדל, הערך הוא 'אירופה/ריגה'.
ZBX_SERVER_NAME ממשק אינטרנט שם התקנת Zabbix גלוי בפינה הימנית העליונה של ממשק האינטרנט.
כברירת מחדל, הערך הוא 'Zabbix Docker'
ZBX_JAVAGATEWAY_ENABLE שרת
פרוקסי
מאפשר תקשורת עם Zabbix Java gateway כדי לאסוף בדיקות הקשורות ל-Java.
כברירת מחדל, הערך הוא "false"
ZBX_ENABLE_SNMP_TRAPS שרת
פרוקסי
מאפשר תכונת SNMP trap. זה דורש מופע zabbix-snmptraps ונפח משותף /var/lib/zabbix/snmptraps לשרת Zabbix או ל-Proxy Zabbix.
משתני סביבה

כל התמונות של רכיבי Zabbix מספקות משתני סביבה לשליטה תְצוּרָה. משתני סביבה אלו מפורטים בכל רכיב מאגר. משתני סביבה אלו הם אופציות של Zabbix קבצי תצורה, אך עם שיטת שמות שונה. לדוגמה, ZBX_LOGSLOWQUERIES שווה ל-LogSlowQueries משרת Zabbix ו- קבצי תצורת פרוקסי של Zabbix.

::: שימו לב חשוב חלק מאפשרויות התצורה אינן מורשות לעשות זאת שינוי. לדוגמה, PIDFile ו-LogType. :::

לחלק מהרכיבים יש משתני סביבה ספציפיים, שאין להם קיימים בקובצי התצורה הרשמיים של Zabbix:

משתנה רכיבים תיאור
DB_SERVER_HOST שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא שם IP או DNS של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא mysql-server או postgres-server עבור MySQL או PostgreSQL בהתאמה
DB_SERVER_PORT שרת
פרוקסי
ממשק אינטרנט
משתנה זה הוא יציאה של שרת MySQL או PostgreSQL.
כברירת מחדל, הערך הוא '3306' או '5432' בהתאמה.
MYSQL_USER שרת
פרוקסי
ממשק אינטרנט
משתמש במסד נתונים MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_PASSWORD שרת
פרוקסי
ממשק אינטרנט
סיסמת מסד נתונים של MySQL.
כברירת מחדל, הערך הוא 'zabbix'.
MYSQL_DATABASE שרת
פרוקסי
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
POSTGRES_USER שרת
ממשק אינטרנט
משתמש במסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_PASSWORD שרת
ממשק אינטרנט
סיסמת מסד נתונים PostgreSQL.
כברירת מחדל, הערך הוא 'zabbix'.
POSTGRES_DB שרת
ממשק אינטרנט
שם מסד נתונים של Zabbix.
כברירת מחדל, הערך הוא 'zabbix' עבור שרת Zabbix ו-'zabbix_proxy' עבור Zabbix proxy.
PHP_TZ ממשק אינטרנט אזור זמן בפורמט PHP. רשימה מלאה של אזורי זמן נתמכים זמינה ב-php.net.
כברירת מחדל, הערך הוא 'אירופה/ריגה'.
ZBX_SERVER_NAME ממשק אינטרנט שם התקנת Zabbix גלוי בפינה הימנית העליונה של ממשק האינטרנט.
כברירת מחדל, הערך הוא 'Zabbix Docker'
ZBX_JAVAGATEWAY_ENABLE שרת
פרוקסי
מאפשר תקשורת עם Zabbix Java gateway כדי לאסוף בדיקות הקשורות ל-Java.
כברירת מחדל, הערך הוא "false"
ZBX_ENABLE_SNMP_TRAPS שרת
פרוקסי
מאפשר תכונת SNMP trap. זה דורש מופע zabbix-snmptraps ונפח משותף /var/lib/zabbix/snmptraps לשרת Zabbix או ל-Proxy Zabbix.

Docker Compose

Zabbix מספקת קובצי חיבור גם להגדרה והרצה רכיבי Zabbix מרובי מכולות ב-Docker. קבצי חיבור אלה הם זמין במאגר הרשמי של Zabbix docker באתר github.com: https://github.com/zabbix/zabbix-docker. קבצי חיבור אלה מתווספים כדוגמאות, הם עמוסים יתר על המידה. לדוגמה, הם מכילים פרוקסי עם תמיכה ב-MySQL ו- SQLite3.

ישנן כמה גרסאות שונות של קובצי חיבור:

שם הקובץ תיאור
docker-compose_v3_alpine_mysql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 ב-Alpine Linux עם תמיכה במסד נתונים של MySQL.
docker-compose_v3_alpine_mysql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה העדכנית ביותר של Zabbix 6.0 ומריץ רכיבי Zabbix ב-Alpine Linux עם תמיכה במסד נתונים של MySQL.
docker-compose_v3_alpine_pgsql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 ב-Alpine Linux עם תמיכה במסד נתונים PostgreSQL.
docker-compose_v3_alpine_pgsql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה האחרונה של Zabbix 6.0 ומריץ רכיבי Zabbix על Alpine Linux עם תמיכה במסד נתונים PostgreSQL.
docker-compose_v3_centos_mysql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 ב-CentOS 8 עם תמיכה במסד נתונים של MySQL.
docker-compose_v3_centos_mysql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה העדכנית ביותר של Zabbix 6.0 ומריץ רכיבי Zabbix על CentOS 8 עם תמיכה במסד הנתונים של MySQL.
docker-compose_v3_centos_pgsql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 על CentOS 8 עם תמיכה במסד נתונים PostgreSQL.
docker-compose_v3_centos_pgsql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה העדכנית ביותר של Zabbix 6.0 ומריץ רכיבי Zabbix על CentOS 8 עם תמיכה במסד נתונים PostgreSQL.
docker-compose_v3_ubuntu_mysql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 ב-Ubuntu 20.04 עם תמיכה במסד נתונים של MySQL.
docker-compose_v3_ubuntu_mysql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה העדכנית ביותר של Zabbix 6.0 ומריץ רכיבי Zabbix על אובונטו 20.04 עם תמיכה במסד נתונים של MySQL.
docker-compose_v3_ubuntu_pgsql_latest.yaml קובץ החיבור מריץ את הגרסה העדכנית ביותר של רכיבי Zabbix 6.0 על אובונטו 20.04 עם תמיכה במסד נתונים PostgreSQL.
docker-compose_v3_ubuntu_pgsql_local.yaml קובץ החיבור בונה באופן מקומי את הגרסה האחרונה של Zabbix 6.0 ומריץ רכיבי Zabbix על אובונטו 20.04 עם תמיכה במסד נתונים PostgreSQL.

::: שימו לב חשוב קבצי חיבור Docker זמינים תומכים בגרסה 3 של Docker Compose. :::

אחסון

קובצי חיבור מוגדרים לתמוך באחסון מקומי במחשב מארח. Docker Compose תיצור ספריית zbx_env בתיקייה עם ה- קובץ חיבור כאשר אתה מפעיל רכיבי Zabbix באמצעות קובץ החיבור. ה ספרייה תכיל את אותו מבנה כפי שתואר לעיל ב- כרכים מקטע וספרייה לאחסון מסד נתונים.

ישנם גם אמצעי אחסון במצב קריאה בלבד עבור /etc/localtime ו קבצי /etc/timezone.

קבצי סביבה

באותה ספרייה עם קבצי חיבור ב-github.com אתה יכול למצוא קבצים עם משתני סביבה ברירת מחדל עבור כל רכיב בחיבור קוֹבֶץ. קבצי סביבה אלה נקראים בשם .env_<סוג הרכיב>.

דוגמאות

הפקודות המפורטות להלן הן עבור Docker Compose V2. אם אתה משתמש ב-Docker Compose V1, החלף את 'docker compose -f' ב-docer-compose -f'

דוגמה 1

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

הפקודה תוריד את התמונות העדכניות ביותר של Zabbix 6.0 עבור כל Zabbix רכיב ולהפעיל אותם במצב ניתוק.

::: שימו לב חשוב אל תשכח להוריד קבצי .env_<type of component> מ-github.com הרשמי של Zabbix מאגר עם קבצי חיבור. :::

דוגמה 2

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

הפקודה תוריד את תמונת הבסיס של Ubuntu 20.04 (מוקד), ולאחר מכן תבנה רכיבי Zabbix 6.0 באופן מקומי והפעל אותם במצב ניתוק.