Zabbix 4.2インストール、Docker Image作成する
概要
Docker CentOS(Official Image)をベースにして、Zabbix 4.2をインストール。
Docker Imageを作成。
環境
- Windows 10 Pro
- Windows PowerShell
- Docker Desktop Community Version 2.0.0.3
手順
Docker CentOS(Official Image)準備
PowerShell上
-
docker pull centos
コンテナ実行・コンテナに入る
PowerShell上
-
docker run --privileged -it -d --name centos7 centos /sbin/init
-
docker exec -it centos7 /bin/bash
CentOSコンテナ初期処理
コンテナ上
- /etc/yum.confの「tsflags=nodocs」コメントアウト
-
localedef -f UTF-8 -i ja_JP ja_JP
MySQLインストール・起動
コンテナ上
-
yum -y localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
-
yum -y install mysql-community-server
-
systemctl enable mysqld.service
-
systemctl start mysqld.service
MySQL初期パスワード確認
コンテナ上
-
grep password /var/log/mysqld.log
例
2019-04-03T01:41:01.445286Z 1 [Note] A temporary password is generated for root@localhost: DQB>3&GcAhF1
「root@localhost: 」の後ろがパスワード
控えておく
MySQLパスワード変更
コンテナ上
-
mysql -uroot -p
パスワードを聞かれるので前作業で控えたパスワード入力
- mysql上
set password for root@localhost=password('Zabbix-db-9876');
quit
Zabbixインストール
コンテナ上
-
rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm
-
yum clean all
-
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
Zabbix DB初期設定
コンテナ上
-
mysql -uroot -p
パスワードを聞かれるので「Zabbix-db-9876」入力
- mysql上
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'Zabbix-db-9876';
-
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Zabbix初期設定・起動
コンテナ上
- /etc/zabbix/zabbix_server.confに「DBPassword=Zabbix-db-9876」追加
「DBPassword」で検索すると適切な挿入位置は分かる - /etc/httpd/conf.d/zabbix.confの「# php_value date.timezone Europe/Riga」を検索。
コメントを外す
「Europe/Riga」を「Japan」に変更 -
systemctl restart zabbix-server zabbix-agent httpd
-
systemctl enable zabbix-server zabbix-agent httpd
- コンテナ抜ける
exit
Docker Image作成
PowerShell上
- コンテナ停止
docker stop centos7
Docker Image作成
docker commit centos7 zabbix4_2-centos7
作成したImageでコンテナ起動
PowerShell上
-
docker run --privileged -it -d -p 7777:80 --rm --name zabbix zabbix4_2-centos7
Zabbixアクセス先「http://localhost:7777/zabbix/」となります。
あとは
Data Volume等でMySQLを永続化すれば。