docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源,它可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,还可以实现虚拟化。下面将介绍docker的编译使用教程。

一、docker安装

1.安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyu

2.启动docker应用

systemctl start docker && systemctl enable docker

二、SQL安装

注:MySQL与PostGreSQL只选其一安装即可

(一)mysql安装

1、先创建对应用户

useradd mysql -u20223 -s /sbin/nologin

2、上传mysql5.7.36.tar与data.tar文件

mysql5.7.36.tar为镜像文件 ; data.tar为数据库文件和配置文件

3、导入镜像

docker load -i mysql5.7.36.tar

4.解压data.tar

mkdir -p
/itops/

 tar -xf data.tar -C /itops/

 chown mysql.mysql /itops/mysql -R

​5.运行

docker run -itd -p3306:3306 -v
/itops/mysql/etc:/etc/mysql/conf.d -v/itops/mysql/data:/var/lib/mysql
lw_mysql:5.7.36

账号:root

密码:ITIM_p@ssw0rd

账号:zabbix

密码:zabbix

(二)postgresql安装

1、先创建对应用户

useradd
postgres -u20224 -s /sbin/nologin

2、上传postgresql12.8.tar与data.tar文件

postgresql12.8.tar为镜像文件 ; data.tar为数据库文件和配置文件

3、导入镜像

docker load -i postgresql12.8.tar

4、解压data.tar

mkdir -p /itops/

tar -xf data.tar -C /itops/

chown postgres.postgres /itops/postgres -R

5、运行

docker run -itd
-v/itops/postgres/data:/var/lib/postgresql/data -v /itops/postgres/etc/postgres.conf:/etc/postgresql/postgresql.conf
-p5432:5432 lw_postgres:12.8

三、server安装

1、先创建对应用户

useradd zabbix -u20222 -s /sbin/nologin

2、上传zabbix_server.tar与conf.tar文件

zabbix_server.tar 为镜像文件;conf.tar为server配置文件和日志等目录

3、导入镜像

docker load -i zabbix_server.tar

4、解压conf.tar

mkdir -p /itops/zabbix_server

tar -xf conf.tar -C /itops/zabbix_server

5、替换本机IP地址

sed -i 's/192.168.229.17/本机ip/g' /itops/zabbix_server/etc/zabbix_server.conf

sed -i 's/192.168.229.17/本机ip /g' /itops/zabbix_server/etc/zabbix_agentd.conf

6、修改目录属主

chown zabbix.zabbix /itops/zabbix_server -R

7、运行

docker run 
-itd -p10050:10050 -p10051:10051 -p10052:10052
-v/itops/zabbix_server/:/itops/zabbix/ 
zabbix_server:5.0.16

四、Nginx安装

1、上传压缩包nginx-v1.3.tar.gz与itops_v1_4_x86_64.tar文件

itops_v1_4_x86_64.tar 为镜像文件;nginx-v1.3.tar.gz为nginx配置文件和日志等目录​

2、导入镜像

docker load -i itops_v1_4_x86_64.tar

​3、解压nginx-v1.3.tar.gz

mkdir -p /itops/

tar -xf nginx-v1.3.tar.gz -C /itops/

4、修改配置文件

sed -i
's/192.168.126.151/本机ip/g'  /itops/nginx/html/zabbix/conf/zabbix.conf.php

sed -i
's/192.168.126.151/本机ip/g' 
/itops/nginx/html/lwjk_v3/web/z/conf/zabbix.conf.php

sed -i
's/192.168.126.151/本机ip/g'  /itops/nginx/html/lwjk_v3/config/db.php

​5、运行

docker run -d  
-v /itops/nginx/etc:/itops/etc -v /itops/nginx/html:/itops/nginx/html -p
80:80 -p 8081:8081 itops:v1.3

/itops/php/sbin/php-fpm --fpm-config
/itops/etc/php/php-fpm.conf

/itops/nginx/sbin/nginx -c
/itops/etc/nginx/nginx.conf -g "daemon off;"

五、agent安装

1、上传zabbix_agent.tar conf.tar

zabbix_agent.tar 为镜像文件;conf.tar为agent配置文件和日志目录

2、导入镜像

docker load -i zabbix_agent.tar

3、解压conf.tar

mkdir -p /itops/zabbix_agent

tar -xf conf.tar -C /itops/zabbix_agent

chown zabbix.zabbix /itops/zabbix_agent -R

4、修改配置文件

sed -i 's/127.0.0.1/本地ip/g'
/itops/zabbix_agent/etc/zabbix_agentd.conf

5、运行

docker run  -itd -p10050:10050
 -v/itops/zabbix_agent/etc/:/itops/zabbix/etc/ -v/itops/zabbix_agent/logs/:/itops/zabbix/logs/
-v/itops/zabbix_agent/scripts/:/itops/zabbix/scripts/ zabbix_agent:5.0.16

6、登录web界面

http://本机ip

账号:Admin

密码:zabbix

到这里docker编译过程就结束了。我是乐维IT君,专注运维技术分享,更多docker及其他运维内容,还可以查看我的往期内容,使用docker-compose快速部署zabbix监控系统zabbix技术分享

Zabbix技术分享——docker组件编译使用教程的更多相关文章

  1. AY写给国人的教程- VS2017 Live Unit Testing[1/2]-C#人爱学不学-aaronyang技术分享

    原文:AY写给国人的教程- VS2017 Live Unit Testing[1/2]-C#人爱学不学-aaronyang技术分享 谢谢大家观看-AY的 VS2017推广系列 Live Unit Te ...

  2. AY写给国人的教程- VS2017 Live Unit Testing[2/2]-C#人爱学不学-aaronyang技术分享

    原文:AY写给国人的教程- VS2017 Live Unit Testing[2/2]-C#人爱学不学-aaronyang技术分享 谢谢大家观看-AY的 VS2017推广系列 Live Unit Te ...

  3. 技术分享 | 自制GreatSQL Docker镜像

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 近期打算制作一个GreatSQL的docker镜像,方便社区用户使用GreatSQL. 制作docker镜像的环境基于Ce ...

  4. 腾讯技术分享:微信小程序音视频与WebRTC互通的技术思路和实践

    1.概述 本文来自腾讯视频云终端技术总监rexchang(常青)技术分享,内容分别介绍了微信小程序视音视频和WebRTC的技术特征.差异等,并针对两者的技术差异分享和总结了微信小程序视音视频和WebR ...

  5. docker容器入门最佳教程

    为什么要写这个 简单回答是:容器技术非常热门,但门槛高. 容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行. 对 IT 行业来说,这是一项非常有价值的技术.而对 I ...

  6. Springcloud技术分享

    Springcloud技术分享 Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来 ...

  7. fir.im Weekly - 新开发时代,需要什么样的技术分享

    "2016年,当我们迎来了如Xcode 8.Swift 3.SiriKit.Android N.Android Instant Apps.React Native等诸多移动开发技术.开发工具 ...

  8. fir.im Weekly - 8 个不能错过的 iOS / Android 技术分享

    本期 fir.im Weekly 收集了 2 月下旬新鲜出炉的 iOS /Android 技术分享.源码等,iOS 中图片技术的解压缩.逆向实战.iOS SDK 实践,Android架构思考.Andr ...

  9. Java开源博客My-Blog之docker组件化修改

    前言 5月13号上线了自己的个人博客,<Docker+SpringBoot+Mybatis+thymeleaf的Java博客系统开源啦>,紧接着也在github上开源了博客的代码,到现在为 ...

  10. 爱奇艺技术分享:爱奇艺Android客户端启动速度优化实践总结

    本文由爱奇艺技术团队原创分享,原题<爱奇艺Android客户端启动优化与分析>. 1.引言 互联网领域里有个八秒定律,如果网页打开时间超过8秒,便会有超过70%的用户放弃等待,对Andro ...

随机推荐

  1. Java SE 3、封装

    封装 封装的好处 隐藏实现细节 可以对数据进行验证,保证安全合理 实现步骤 将属性进行私有化private 提供一个公共的(public)set方法,用于对属性判断并赋值 public void se ...

  2. Python数据科学手册-Pandas数据处理之简介

    Pandas是在Numpy基础上建立的新程序库,提供了一种高效的DataFrame数据结构 本质是带行标签 和 列标签.支持相同类型数据和缺失值的 多维数组 增强版的Numpy结构化数组 行和列不在只 ...

  3. 在UniApp的H5项目中,生成二维码和扫描二维码的操作处理

    在我们基于UniApp的H5项目中,需要生成一些二维码进行展示,另外也需要让用户可以扫码进行一定的快捷操作,本篇随笔介绍一下二维码的生成处理和基于H5的扫码进行操作.二维码的生成,使用了JS文件wea ...

  4. Vmware部署Linux无人值守安装Centos7系统

    Linux - 无人值守安装服务 # 需求分析 - 使用光盘镜像来安装 Linux 系统的方式; 坦白讲, 该方法适用于只安装少量 Linux 系统的情况, 如果生产环境中有数百台服务器都需安装系统, ...

  5. ProxySQL 使用情况报错问题汇总及解决办法

    1.ProxySQL Error: connection is locked to hostgroup 2 but trying to reach hostgroup 1 解决方案:登上proxysq ...

  6. Centos7.6内核升级

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483766&idx=1&sn=4750fd4e ...

  7. 胎压监测系统(DWS)

    胎压监测系统(DWS)通过监测和比较行驶时各车轮和轮胎的滚动半径和旋转特性,以确定是否一个或多个轮胎明显充气不足,而非直接测量各轮胎的压力. 系统监测到异常时指示灯将点亮,且仪表上出现信息. 必须校准 ...

  8. 5_项目实战MyShop

    一. 网上商城 1.1 商城类别 B2B 商家对商家 B2C 商家对客户 C2C 客户对客户 O2O 线上线下相结合 1.2 商城常见模块 后台常见功能模块 商品管理 包括后台商品库存管理, 上货, ...

  9. C#-9 委托

    一 什么是委托 可以认为委托是持有一个或多个方法的对象.可以执行委托,执行时委托会执行它所持有的方法. 从C++的角度理解,委托可以看成一个类型安全.面向对象的C++函数指针. delegate vo ...

  10. TF-GNN踩坑记录(二)

    引言 最近在尝试构建GraphTensor时,尝试把默认的特征名hidden_state改成其他时,出现了奇怪的报错. 报错 WARNING:tensorflow:Gradients do not e ...