- Docker Compose 是一个工具,命令行工具。
- 这个工具可以通过yml文件定义多容器的docker应用
- 通过一条命令就可以根据yml文件的定义去创建或者管理这多个容器
docker-compose实验
环境:rhel7.3
1.下载docker-compoes二进制文件 docker-compose-Linux-x86_64-1.22.0
2.
mv docker-compose-Linux-x86_64-1.22.0 /usr/local/bin/docker-compose
3.
chmod +x /usr/local/bin/docker-compose
4.
cd /tmp --> mkdir docker --> cd docker --> mkdir compose --> cd compose
5.
vim docker-compose.yml
web1:
image: nginx
expose:
- 80
volumes:
- ./web1:/usr/share/nginx/html
web2:
image: nginx
expose:
- 80
volumes:
- ./web2:/usr/share/nginx/html
haproxy:
image: haproxy
volumes:
- ./haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
links:
- web1
- web2
ports:
- "80:80"
expose:
- "80"
6.
mkdir web1
mkdir web2
echo web1 > web1/index.html
echo web2 > web2/index.html
7.
mkdir haproxy --> cd haproxy/
vim haproxy.cfg
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
stats uri /status
frontend balancer
bind 0.0.0.0:80
default_backend web_backends
backend web_backends
balance roundrobin
server server1 web1:80 check
server server2 web2:80 check
8.
docker-compose up -d
9.测试,浏览器访问,实现nginx负载均衡和健康检查
还有一些其他的指令,比如停止运行,删除容器,开启容器,查看日志等等
docker-compose stop
docker-compose rm
docker-compose start
docker-compose logs