前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速学习Docker-多容器管理(docker-compose)

快速学习Docker-多容器管理(docker-compose)

作者头像
cwl_java
发布2019-11-04 11:44:15
2.8K0
发布2019-11-04 11:44:15
举报
文章被收录于专栏:cwl_Javacwl_Java

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/102871909

多容器管理(docker-compose)

前面讲了 Dockerfile 用来构建 Docker 镜像,那么 docker-compose 则是用来创建容器的。 Docker 有三个主要的功能:Build、Ship 和 Run,使用 docker-compose 可以帮我们在 Run 的层面解决很多实际问题。docker-compose 通过一个 yaml 模板文件来统一管理多个容器的配置,如网络、数据卷、执行指令、环境变量、资源限制等等。有了 docker-compose 我们便可以一键重启、关闭、删除、监控所有的 docker 服务,只需要一次配置,则可以对容器进行统一管理,那么此时我们则不必为了每次要运行一堆容器时写大量的命令而头疼。

安装 docker-compose:
  • 方式一
代码语言:javascript
复制
sudo curl -L 
https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) 
-o /usr/local/bin/docker-compose 
chmod +x /usr/local/bin/docker-compose        
docker-compose version 
# 查看版本号,测试是否安装成功

此方法可能因为网络的原因而无法安装,上面的命令是一个例子,它可能会变得过时。要确保您拥有最新版本,请检查GitHub上的Compose存储库版本页面。

  • 方式二:
    • 1、安装python-pip
代码语言:javascript
复制
yum -y install epel-release
yum -y install python-pip
  • 2、安装docker-compose
代码语言:javascript
复制
pip install docker-compose

待安装完成后,执行查询版本的命令确认安装成功

代码语言:javascript
复制
docker-compose version
配置 docker-compose.yml 文件
代码语言:javascript
复制
        version: '3' # docker 的版本
        services: # 配置的容器列表
            CONTAINER_NAME: # 容器的名称
                image: BASE_IMAGE # 这个一个容器的基础镜像
                ports: # 你的容器需不需要做端口映射
                    - "host_port:container_port"
                volumes: # 数据卷配置
                    - host_dir:container_dir
                environment: # 环境变量(map 的配置方式 key: value)
                    PARAM: VALUE
                environments: # 环境变量(数组的配置方式 - key=value)
                    - PARAM=VALUE
                restart: always # 容器的重启策略
                dns: # dns 的配置
                    - "8.8.8.8"
restart 容器的重启策略
  • no:默认策略,在容器退出时不重启容器
  • on-failure:在容器非正常退出时(退出状态非0),才会重启容器
  • on-failure:3:在容器非正常退出时重启容器,最多重启3次
  • always:在容器退出时总是重启容器
  • unless-stopped:在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
常用命令
代码语言:javascript
复制
        docker-compose up -d # 启动所有服务并在后台运行
        docker-compose ps # 查看服务运行状态
        docker-compose restart # 重启所有服务
        docker-compose restart myApp # 重启 myApp 服务
        docker-compose start # 开启所有服务
        docker-compose start myApp # 开启 myApp 服务
        docker-compose stop # 停止所有服务
        docker-compose stop myApp # 停止 myApp 服务
        docker-compose rm # 删除所有服务
        docker-compose rm myApp # 删除 myApp fuwu
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 多容器管理(docker-compose)
  • 安装 docker-compose:
  • 配置 docker-compose.yml 文件
  • restart 容器的重启策略
  • 常用命令
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档