ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Docker实战之docker-compose命令基础

2022-05-17 13:04:10  阅读:190  来源: 互联网

标签:容器 compose 配置文件 命令 Docker docker


  Docker实战之docker-compose安装及命令配置概述 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中简单介绍了docker-compose的命令,通过docker-compose,执行--help可以查看帮助信息:

        

   从上图看,该命令支持两个参数-f/-p。

  -f参数用来指定Docker Compose的配置文件,这个参数可以使用多次——即可以一次指定多个配置文件。当多个配置文件有同名服务时,其只会解析执行后面的配置文件。

  -p参数用来指定容器项目名称。Docker Compose启动容器时会默认把当前的目录名称设置为容器名称前缀,例如在Web文件夹下启动容器,配置文件中有两个服务分别是app和db,启动的容器名默认是web_db_1和web_app_1。如果想要修改web前缀,就可以使用-p这个参数。

  详细看看各个命令的使用(均以官网提供案例示例):

  1、构建服务镜像的build命令docker-compose build | Docker Documentation

        

         

     上面的docker-compose.yml中再执行docker-compose build命令时会自动构建webapp、database、custom镜像,镜像名默认为文件夹名_镜像名。

    需要注意的是在docker-compose.yml里面定义构建镜像时要把Dockerfile写好,因为Docker Compose实际上是通过docker-compose.yml读取信息解析后给 docker 客户端执行的。

    默认情况下该命令会构建所有配置文件中的镜像,如果只想构建其中一个容器的镜像,则可以通过指定构建容器名称实现,例如:

      docker-compose build webapp

  2、检查配置语法的config命令docker-compose config | Docker Documentation

        

     config命令用来检查docker-compose.yml文件是否有语法问题,如有则返回错误原因。

  3、创建服务容器的create命令docker-compose create | Docker Documentation

    通过官网可以看到这个命令已经被摒弃了,使用docker-compose up --no-start替代。

        

  4、清理项目的down命令docker-compose down | Docker Documentation

        

     down命令与后面的up命令相对,down命令可以停止容器并删除包括容器、网络、数据卷等内容。也就是只要是up命令创建的东西,使用down命令都可以删除。此外,如果网络、数据卷等资源正在被其他服务使用,down命令会跳过这些组件。同时也可以通过其提供-v/--rmi指定删除内容。

  5、查看事件的events命令docker-compose events | Docker Documentation

        

    该命令实际上就是对docker events的整合,通过该命令可以看到与配置文件定义的服务相关的事件。

  6、进入服务的exec命令

  7、杀死服务容器的kill命令

  8、查看服务容器日志的logs命令

  9、暂停服务容器的pause命令

  10、查看服务容器端口状态的port命令

  11、查看项目容器信息ps命令

  12、拉取项目镜像的pull命令

  13、推送项目镜像的push命令

  14、重启服务容器的restart命令

  15、删除项目容器的rm命令

  16、执行一次性命令的run命令

  17、设置服务容器数量的scale命令

  18、启动服务容器的start命令

  19、停止服务容器的stop命令

  20、取消暂停的unpause命令

  21、启动项目的up命令

  通过官网关于docker-compose的命令介绍,其配置文件及命令是不是类似makefile和make。

 

未完,待续……

 

标签:容器,compose,配置文件,命令,Docker,docker
来源: https://www.cnblogs.com/ilovebath/p/16279866.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有