docker在使用中的一点点体会

docker 接触一段时间了,docker在自动化里面的地位还是可圈可点的,比如利用镜像构建cicd环境,提供了在单机闭环完成多种环境下测试的较多的可能,这是一种对资源充分利用的思想. 在工作中对docker最大体会是方便,干净,简洁,之前用虚拟机最的困扰可能就是项目切换中版本依赖问题了,比如jdk版本,比如第三库版本,好不容易兼容了A,在切换到B项目时候就变得苦恼不已,现在有了docker就可以跟版本依赖说再见了,一个干净的环境再也没有谁污染谁,镜像的还原和重建显得异常的简单.感触比较深的是刚刚工作的时候在没有图形界面的linux中搭建oracle的时候简直就能让人有种想gg的冲动.不过现在好了,有了新的玩法,和对虚拟机新的定义.更多的使用docker让他为工作带来更多的便捷.

docker 构建kafka-manager
1.下载镜像
这里使用了wurstmeister/kafka和wurstmeister/zookeeper这两个版本的镜像

docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
docker pull sheepkiller/kafka-manager

在命令中运行docker images验证三个镜像已经安装完毕

2.运行容器
2.1 启动zookeeper
docker run -d --name zookeeper --publish 2181:2181 \--volume /etc/localtime:/etc/localtime \--restart=always \wurstmeister/zookeeper

2.2 启动kafka
docker run -d --name kafka --publish 9082:9092 \--link zookeeper:zookeeper \--env KAFKA_BROKER_ID=100 \--env HOST_IP=192.168.117.132 \--env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \--env KAFKA_ADVERTISED_HOST_NAME=192.168.117.132 \--env KAFKA_ADVERTISED_PORT=9082 \--restart=always \--volume /etc/localtime:/etc/localtime \wurstmeister/kafka
2.3 启动kafka-manager
docker run -d --name kafka-manager \--link zookeeper:zookeeper \--link kafka:kafka -p 9001:9000 \--restart=always \--env ZK_HOSTS=zookeeper:2181 \sheepkiller/kafka-manager
3.访问kafkamanager
http://192.168.117.132:9001/



修改节点后  在另外一台节点上运行
docker run -d --name kafka --publish 9082:9092 \--link zookeeper:zookeeper \--env KAFKA_BROKER_ID=101 \--env HOST_IP=192.168.117.134 \--env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \--env KAFKA_ADVERTISED_HOST_NAME=192.168.117.134 \--env KAFKA_ADVERTISED_PORT=9082 \--restart=always \--volume /etc/localtime:/etc/localtime \wurstmeister/kafka