docker单机编排工具docker-compose

本文详细介绍在Linux系统中使用Docker编排工具进行容器管理的方法。包括epel源及pip的安装,通过pip安装docker-compose,以及如何使用docker-compose进行容器的编排,如启动、停止、构建和查看日志等。并以haproxy和nginx为例,演示了如何通过docker-compose.yml文件定义服务,链接容器和端口映射。

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

编排工具安装

      本文为在linux系统中操作,首先是安装epel源。然后安装python的pip组件,利用pip安装docker-compose,在安装完毕后,可以使用查看版本命令以及帮助命令查看所支持的子命令。

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install python-pip -y
pip install docker-compose
docker-compose version
docker-compose --help

编排工具使用

      我们以haproxy挂载两个nginx为例子,首先,编辑一个编排文档,文档的后缀为yum。然后执行up命令把编排启动。整个命令执行见下。

vim docker-conmpse.yml


web1:
  image: nginx
  expose:
    - 80  

web2:
  image: nginx
  expose:
    - 80

haproxy:
  image: haproxy
  volumes:
    - /opt/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
  links:
    - web1
    - web2 
  ports:
    - "7777:8080"
    - "80:80"

wq!

docker-compose up

      执行完毕后,可以通过浏览haproxy的站点统计页面查看运行情况。

      

 

编排工具语法

命令名称含义举例
image使用的镜像 
build指定Dockerfile构建version: '3'
services:
  web:
    build: ./
command启动执行命令version: '3'
services:
    web:
        build: ./
        command: env
links链接其他容器 
ports端口映射ports:
    - "8080:80"
    - "127.0.0.1:8080:80"
expose暴露端口 
volumes挂载路径volumes:
    - ./conf.d:/etc/nginx/conf.d
    # nginx.conf对容器来说只读
    - ./nginx.conf:/etc/nginx/nginx.conf:ro
volumes_from从容器挂载 
environment环境变量environment:
  - RACK_ENV=development
  - SHOW=true
  - SESSION_SECRET

 

编排工具常见命令列表

命令命令说明
docker-compose up -d nginx构建建启动nignx容器
docker-compose exec nginx bash登录到nginx容器中
docker-compose down删除所有nginx容器,镜像
docker-compose ps显示所有容器
docker-compose restart nginx重新启动nginx容器
docker-compose run --no-deps --rm php-fpm php -v  在php-fpm中不启动关联容器,并容器执行php -v 执行完成后删除容器
docker-compose build nginx构建镜像 。        
docker-compose build --no-cache nginx不带缓存的构建。
docker-compose logs  nginx查看nginx的日志
docker-compose logs -f nginx查看nginx的实时日志

docker-compose config  -q

验证(docker-compose.yml)文件配置,当配置正确时,不输出任何内容,当文件配置错误,输出错误信息。 
docker-compose events --json nginx以json的形式输出nginx的docker日志
docker-compose pause nginx暂停nignx容器
docker-compose unpause nginx恢复ningx容器

docker-compose rm nginx

删除容器(删除前必须关闭容器)
docker-compose stop nginx 停止nignx容器
docker-compose start nginx启动nignx容器

 

 

如果您喜欢这篇文章,别忘了点赞和评论哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值