docker-compose管理多个容器

本文介绍了如何使用docker-compose来管理多个容器,包括配置docker-compose命令和设置Compose管理文件,最终实现通过浏览器访问容器服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker-compose 管理多个容器

设置docker-compose命令

[root@server1 ~]# mv docker-compose-Linux-x86_64-1.22.0  /usr/local/bin/
[root@server1 ~]# cd /usr/local/bin/
[root@server1 bin]# ln -s docker-compose-Linux-x86_64-1.22.0 docker-compose
[root@server1 bin]# chmod +x docker-compose-Linux-x86_64-1.22.0 
[root@server1 bin]# ll
total 53944
-rwxr-xr-x 1 root root 20416312 May 26 16:47 convoy
-rwxr-xr-x 1 root root 23068627 May 26 16:47 convoy-pdata_tools
lrwxrwxrwx 1 root root       34 Jun  1 11:48 docker-compose -> docker-compose-Linux-x86_64-1.22.0
-rw-r--r-- 1 root root 11750136 Jun  1 11:48 docker-compose-Linux-x86_64-1.22.0

设置compose管理文件

[root@server1 ~]# docker inspect haproxy
           "Cmd": [
                "haproxy",
                "-f",
                "/usr/local/etc/haproxy/haproxy.cfg"
            ],

[root@server1 ~]# mkdir /mnt/compose
[root@server1 ~]# cd /mnt/compose/
[root@server1 compose]# 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

[root@server1 compose]# mkdir web1
[root@server1 compose]# mkdir web2
[root@server1 compose]# echo web1 > web1/index.html
[root@server1 compose]# echo web2 > web2/index.html
[root@server1 compose]# mkdir haproxy
[root@server1 compose]# cd haproxy/
[root@server1 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
# 启动
[root@server1 haproxy]# docker-compose up -d
Creating compose_web2_1 ... done
Creating compose_web1_1 ... done
Creating compose_haproxy_1 ... done

在浏览器上访问172.25.24.1

[root@server1 haproxy]# docker stop compose_web1_1
compose_web1_1
[root@server1 haproxy]# docker start compose_web1_1
compose_web1_1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值