看文章前请注意文章的时间:2019年11月25日15:03:24
//------------------------------------------------------------------------------------------------------------------
前言
自从学了一点用docker的技术以后,就渐渐离不开docker这个软件了。一方面可以不用在机器上安装很多的软件,比如mysql,上来带着python就是一套,还要启动各种各样的服务,像windows版本的redis之类的,更是落后了好几个版本;另一个方面,用docker还有很多后续的使用容器上的便利。
0.说明
系统:windows 10 64位专业版
docker版本:19.03.5
参考:https://www.cnblogs.com/magic-chenyang/p/7975677.html
https://www.cnblogs.com/lonelyxmas/p/10880717.html
1.下载consul镜像:
docker pull consul
默认下载官方的最新的镜像,下载完成后可以使用如下命令查看本机所有的镜像:
docker images
2.运行consul
2.1首先运行consul的server端
docker run -d -p 18500:8500 -h node1 --name node1 consul agent -server -bootstrap-expect=1 -node=node1 -client 0.0.0.0 -ui
命令的参数很简单:
-p:绑定端口
agent:-server表示是服务端
说明:
网上很多教程都是有参数“-bind=0.0.0.0”,但是总是无法运行起来,最后才发现把“=”改为空格就行了,应该是写法改了
2.2 获取server端的ip
JOIN_IP="$(docker inspect -f '{{.NetworkSettings.IPAddress}}' node1)"
首先需要知道server端的ip,上面命令可以获取到ip并绑定到JOIN_IP这个变量上,重点要注意后面node1这个名称,和server端的name想对应
2.3 运行client端
docker run -d -p 8600:8600 -p 8500:8500 -p 8600:53/udp --name client2 -h client2 consul -ui -node=client2 -join $JOIN_IP
用join来把当前client添加到server端中
3.查看运行结果
地址栏输入
就会跳转到web端首页