首页
学习
活动
专区
工具
TVP
发布

docker入门四:docker-compose及其他概念、基础命令

经过前面几篇入门docker操作,希望你大致已掌握docker的使用,剩下的提高方法主要是多将自己开发的应用部署到docker上,进一步提高熟练掌握docker,docker是当下半自动化运维和自动化运维的主要技能之一,也是效能平台如K8s等的使用基础。

一、docker-compose(https://github.com/docker/compose)

Docker Compose是一个用来定义和运行复杂应用的Docker工具。使用Compose,你可以在一个文件中定义一个多容器应用和容器依赖,然后使用一条命令来启动你的应用,完成一切准备工作。 Docker Compose是用python写的,安装时,需要使用python 的pip管理安装。我们都知道maven 之于java,Docker Compose其实就是docker的maven工具,你将自己的制作的镜像上传到docker hub等公有云或者私有云上后,就能在客户端通过compose来操作部署你的镜像到自己服务器上。

Docker Compose默认的配置文件是docker-compose.yml,下面我们以携程开源分布式配置项目Apollo(https://github.com/ctripcorp/apollo)的docker-compose来讲解:

如上图所示,apollo项目的docker-compose部署脚本就是这么简洁,services下定义了该部署共需要3个镜像,depends_on指明了它们之间的部署顺序关系,links指明了 apollo-quick-start 镜像需要apollo-db服务,ports是服务器端口到容器端口的映射. 在上诉文件夹下执行docker-compose up -d命令(docker-compose 默认文件是docker-compose.yml,可以在执行命令时用 -f 指定其它名字,-d选项是让命令在后台运行),第一次执行时,会将依赖的镜像文件安装到docker中,下载安装完后,部署的应用就在8080端口和8070端口上运行了。

此时用docker-compose ps可以查看docker中的在运行应用,比较详细的docker-compose命令有如下这些:

build构建或重建服务

help命令帮助

kill杀掉容器

logs显示容器的输出内容

port打印绑定的开放端口

ps显示容器

pull拉取服务镜像

restart重启服务

rm删除停止的容器

run运行一个一次性命令

scale设置服务的容器数目

start开启服务

stop停止服务

up创建并启动容器

更多的docker-compose命令,可以在自己不断实践中熟练掌握

二、docker常用命令

docker run在一个新的容器执行一个命令

docker start开一个或者更多已经停止的容器

docker stop停止一个运行的容器

docker restart重新开始一个运行的容器

docker kill杀死一个运行的容器

docker rm删除一个或更多的容器

docker pause暂停一个容器的所有进程

docker unpaunse恢复一个容器的所有进程

docker容器操作运维

docker ps列出容器

docker inspect列出关于容器或镜像的底层信息

docker top显示一个容器运行的进程

docker attach附上一个运行的容器

docker events得到实时的来自服务的事件

docker log获得一个容器的日志

docker wait阻塞直到一个容器停止,然后打印它的退出代码

docker export导出一个容器的文件系统作为一个tar文件

docker port列出容器映射的端口

docker版本管理

docker commit创建一个新的镜像从一个容器

docker cp从容器复制一个文件或目录到本地目录或标准输出

docker diff展示一个容器文件系统的变化

docker镜像仓库

docker login登入仓库

docker pull拉取镜像

docker push推送镜像

docker search搜索镜像

docker本地镜像管理

docker images列出本地的镜像

docker rmi删除本地的镜像

docker tag打标签本地的镜像

docker build通过Dockerfile构建本地的镜像

docker histroy列出镜像的历史

docker save保存本地的镜像为一个tar文件

docker import通过tar导入镜像

docker load加载tar镜像

docker其它命令

docker info

docker version

上面是docker使用的常用基本命令,平时用时供备查,到此docker的基础入门章节已告段落,后续我我会陆续写docker的高级使用场景。

参考:

1.http://dockone.io/article/834

2.http://wiki.jikexueyuan.com/project/docker-technology-and-combat/commands.html

3.https://www.jianshu.com/p/711bc4ffcecf

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180317G0LIBU00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券