0 Let's Encrypt介绍
Let's Encrypt是一家免费、开放、自动化的证书颁发机构(CA),
为公众的利益而运行(由非盈利组织互联网安全研究小组(ISRG)运营)。

1 安装Let's Encrypt
git clone https://github.com/letsencrypt/letsencrypt

2 生成通配符证书
cd letsencrypt
或者 cd certbot
./certbot-auto certonly -d *.huchangyi.com --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
./certbot-auto certonly -d *.huchangyi.com --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory

3 域名服务商新增DNS
配置一条 TXT 记录

4 证书续签
crontab -e
0 /12 certbot renew --quiet --renew-hook "/etc/init.d/nginx reload"

5 证书路径
/etc/letsencrypt/live/

6 nginx配置
ssl_certificate /etc/letsencrypt/live/huchangyi.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/huchangyi.com/privkey.pem;

7 取消证书
certbot revoke --cert-path /etc/letsencrypt/live/you.cn/cert.pem
certbot delete --cert-name huchangyi.com

一、安装docker
yum install docker
service docker start
chkconfig docker on

docker images

二、清除既往数据
杀死所有正在运行的容器
docker kill $(docker ps -a -q)

删除所有已经停止的容器
docker rm $(docker ps -a -q)

删除所有镜像
docker rmi $(docker images -q)

其他命令
docker stop mysql-server
docker rm mysql-server
docker ps
docker images

三、安装mysql
https://hub.docker.com/r/mysql/mysql-server/
docker pull mysql/mysql-server:5.7.22-1.1.5

四、配置mysql
docker启动
docker run -it --name mysql-server -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -e MYSQL_USER=zabbix -e MYSQL_PASSWORD=zabbix -e MYSQL_DATABASE=zabbix -d mysql/mysql-server:5.7.22-1.1.5 --character-set-server=utf8 --collation-server=utf8_general_ci

进入shell
docker exec -it mysql-server bash

修改配置
yum install vim -y
vim /etc/my.cnf
[mysqld]
default_authentication_plugin=mysql_native_password

修改权限
select host, user from mysql.user;
GRANT ALL PRIVILEGES ON . TO 'zabbix'@'%';
flush privileges;

重启
exit
docker restart mysql-server

修改密码
docker exec -it mysql-server bash
mysqladmin -uroot -proot password root
mysqladmin -uzabbix -pzabbix password zabbix

五、确认mysql
docker logs mysql-server
mysql -uzabbix -h 47.74.242.58 -pzabbix

六、安装zabbix-server
https://hub.docker.com/r/zabbix/
docker pull zabbix/zabbix-server-mysql:centos-3.4.*

七、配置zabbix-server
docker run --name zabbix-server -p 10051:10051 -e DB_SERVER_HOST="47.74.242.58" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e MYSQL_DATABASE='zabbix' -d zabbix/zabbix-server-mysql:latest

八、确认zabbix-server
docker ps
docker logs zabbix-server
docker exec -it zabbix-server bash

九、安装zabbix-web
https://hub.docker.com/r/zabbix/zabbix-web-nginx-mysql/
docker pull zabbix/zabbix-web-nginx-mysql:centos-3.4-latest

十、配置zabbix-web
docker run --name zabbix-web -p 80:80 --link mysql-server:mysql-server --link zabbix-server:zabbix-server -e DB_SERVER_HOST="47.74.242.58" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e ZBX_SERVER_HOST="47.74.242.58" -e PHP_TZ="Asia/Shanghai" -d zabbix/zabbix-web-nginx-mysql:centos-3.4-latest

十一、登录
Admin/zabbix

十二、客户端配置
windows
下载
https://www.zabbix.com/download_agents

修改
zabbix_agentd.win.conf

Server=svn.wisq.cn(服务器)
ServerActive=svn.wisq.cn(服务器)
Hostname=127.0.0.1(最好是本机IP)

安装服务
cd C:zabbix
zabbix_agentd.exe -i -c zabbix_agentd.win.conf

启动服务
services.msc

10053错误

linux
https://www.zabbix.com/download
rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum install zabbix-agent
rpm -ql zabbix-agent
vim /etc/zabbix/zabbix_agentd.conf

配置防火墙
vi /etc/sysconfig/iptables
-A INPUT -s 58.48.186.194 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
-A INPUT -s 58.48.186.194 -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT

安装中文语言包
yum reinstall kde-l10n-Chinese -y
yum reinstall glibc-common -y
localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
locale -a

增加中文字体
从主机复制到容器sudo docker cp host_path containerID:container_path
从容器复制到主机sudo docker cp containerID:container_path host_path
docker cp msyh.ttf zabbix-web:/usr/share/zabbix/fonts
cd /usr/share/zabbix/fonts
vim /usr/share/zabbix/include/defines.inc.php

docker cp zabbix-web:/usr/share/zabbix/include/defines.inc.php defines.inc.php

拷贝出来替换如下两处(DejaVuSans.ttf或graphfont.ttf)
define('ZBX_GRAPH_FONT_NAME','msyh'); // font file name
define('ZBX_FONT_NAME', msyh');

docker cp defines.inc.php zabbix-web:/usr/share/zabbix/include/defines.inc.php

安装邮件告警
yum install sendmail -y
yum install mailx -y
service sendmail restart
service mailx restart

十三、备份及回复
docker ps
容器保存为镜像
docker commit -p mysql-server mysql-server
docker commit -p zabbix-server zabbix-server
docker commit -p zabbix-web zabbix-web
docker images

镜像保存到本地
docker save -o mysql-server.tar mysql-server
docker save -o zabbix-server.tar zabbix-server
docker save -o zabbix-web.tar zabbix-web

加载本地镜像
docker load -i mysql-server.tar

1 添加icon
build/usr/themes/default/header.php中添加

< link rel="shortcut icon" href="/usr/themes/default/favicon.ico"type="image/x-icon" />

2 添加外链
新页面中添加

<script>window.location.href = "https://baidu.com"</script>

或者打开新的窗口

<script>window.open('https://baidu.com')</script>