一、Docker网络通信
1、端口映射
·端口映射机制将容器内的服务提供给外部网络访问
·可随机或指定映射端口范围
docker run -d -P httpd:centos
docker run -d -p 49888:80 httpd:centos
2、容器互联
·在源容器和接收容器间建立一条网络通信隧道
·使用docker run命令--link选项实现容器间互联通信
实现容器互联
docker run -d -P --name web1 httpd:centos
docker run -d -p --name web2 --link web1:web1
httpd:centos
docker exec -it web2 /bin/bash
ping web1
二、Docker Compose容器编排
1、YAML是一种标记语言很直观的数据序列化格式
2、文件格式及编写注意事项
·不支持制表符tab键缩进,需要使用空格缩进
·通常开头缩进2个空格
·字符后缩进1个空格,如冒号、逗号、横杆
·用#号注释
·如果包含特殊字符用单引号引起来
·布尔值必须用引号括起来
Compose命令说明
1、基本的使用格式
docker-compose [options] [COMMAND] [ARGS...]
2、docker-compose选项
·--verbose 输出更多调试信息
·--version 打印版本并退出
·-f , --file FILE 使用特定的compose模板文件,默认为docker-compose.yml
·-p , -project-name NAME 指定项目名称,默认使用目录名称
三、案例部署
compose部署
环境部署所有主机安装docker环境
上传docker-compose到/root目录下
将docker-compose移动到/usr/local/bin
在server1上安装consul
通过httpd api 获取集群信息
在server2上安装Gliderlabs/Registrator
在server2上安装两个httpd及nginx容器
将两个nginx服务移除查看,网页监控服务也被移除