美文网首页
Docker学习系列之-Docker-compose使用

Docker学习系列之-Docker-compose使用

作者: 平淡日子里的一根刺 | 来源:发表于2020-05-25 16:26 被阅读0次

    前言

    首先介绍一下docker-compose是什么,之前介绍Dockerfile的时候,每个应用都需要我们通过docker build去构建镜像,镜像构建成功之后还需要执行docker run指令,应用少还好,但是应用多了这样就显得繁琐了。docker-compose就是为了解决这样的情况。通过使用docker-compose,编写相应的yaml文件,进行多个dokcer应用的构建及部署

    正文

    • 安装docker-compose
      安装docker-compose前需要安装docker,然后进行docker-compose的安装。在线安装的方式可能因为网络原因无法正常安装,在线安装方式可以访问官网,这里采取另一种安装方式,访问docker-compose的github,下载我们需要安装的二进制文件。
      下载示例.png
      下载完之后上传至我们的Linux服务器
    # 重命名文件
    mv docker-compose-Linux-x86_64 docker-compose
    # 移动文件到/usr/local/bin目录下,使我们的bash命令能够索引到docker-compose命令
    mv docker-compose /usr/local/bin
    # 给文件添加执行权限,文件默认没有执行权限
    chmod a+x /usr/local/bin/docker-compose
    # 查看是否安装成功
    docker-compose --version
    
    • docker-compose.yaml使用
      安装成功之后,接下来就可以使用docker-compose进行容器编排了,docker-compose跟Dockerfile使用方法类似,也是使用yaml文件进行构建的,接下来通过案例的方式来对dokcer-compose使用进行介绍,此处的Dockerfile示例基于上篇文章.
    version: '2'
    services:
      app:
        build:
          context: ./
          dockerfile: Dockerfile
        mem_limit: 1g
        cpu_quota: 1024
        labels:
          - "test docker compose svc"
          - "echo docker compose up"
        container_name: hello
        depends_on:
          - redis
        volumes:
        - /tmp
        ports:
        - "8080:8080"
    
      redis:
        image: redis:6.0
        container_name: redis
        cpu_quota: 1000
    
    • version 版本号,该指令必须存在
    • services 指需要部署的应用,例如:app,redis
    • build 需要构建的Dockerfile文件路径
    • mem_limit 内存使用限制
    • cpu_quota cpu使用限制,默认为1000
    • labels 对构建的容器进行备注标签说明
    • container_name 构建的容器名称
    • depends_on 该容器启动需要依赖某个容器,需要等到依赖的容器构建完成之后才能构建,可以依赖多个
    • volumes 容器的保存卷
    • ports 映射到dokcer容器端口
    • image 需要拉取的镜像名称

    docker-compose里面的yaml指令可以覆盖Dokcerfile初始化指令,例如ENTRYPOINT命令可以覆盖Dockerfile定义的ENTRYPOINT命令。更多使用大家可以自己去发掘。使用并不复杂。准备就绪之后就可以使用docker-compose命令开始构建应用了

    # 该命令会从当前目录去查找对应的docker-compose.yaml文件来构建   
    docker-compose up
    
    构建示例.png

    容器会根据depends_on命令按顺序进行构建。成功启动之后就可以访问我们的应用了

    # 查看创建的容器
    docker-compose ps
    
    • docker-compose常用命令介绍
      • docker-compose images 查看镜像
      • docker-compose ps 查看容器
      • docker-compose logs 服务名称
      • docker-compose down 停止服务
      • docker-compose exec 进入容器
      • docker-compose scale 指定服务运行的容器个数

    它的命令跟dokcer差不多.更多指令可以通过docker-compose --help去查看

    总结

    这里就把docker-compose的使用介绍的差不多了,compose也好,Dockerfile也好,用起来并不复杂,只有实践才是真正掌握。不要嫌麻烦,一定要多多动手实践。

    相关文章

      网友评论

          本文标题:Docker学习系列之-Docker-compose使用

          本文链接:https://www.haomeiwen.com/subject/dgwyahtx.html