docker cli命令行工具中常用命令备忘(未完待续)

sudo docker images tomcat*    //查看以tomcat字样开头的镜像信息列表

sudo docker pull  php  //下载坐标名称为php的官方镜像层文件

sudo docker rmi php:5.6-fpm  //删除坐标名为php:5.6-fpm这个镜像

sudo docker inspect nginx:1.10  //查看标识名为nginx:1.10这个镜像文件 的详细描述信息

docker search php*   //在官方镜像仓库中搜索以php字样开头的镜像层文件信息

sudo docker images  //查看在本地镜像库中的镜像名称列表

sudo docker save 镜像名:标签名 >xxxx.tar        //将一个本地镜像保存导出至xxxx.tar文件中

sudo docker save  -o ubuntu.tar ubuntu:latest   //本例是将一个ubuntu:latest镜像 导出到一个名为ubuntu.tar文件中去

sudo docker save -o images.tar ubuntu:latest centos:latest   //将多个镜像文件导出到一个名为(自定义)images.tar的归档文件中去

sudo docker load -i ubuntu.tar //将已经导出的镜像归档数据文件ubuntu.tar重新导入到本地的镜像仓库中使用 docker load 命令

sudo docker load <ubuntu.tar //等价于sudo docker load -i ubuntu.tar

sudo docker create debian:jessie  //用docker容器引擎根据 debian:jessie镜像来创建一个容器实例

sudo docker run debian:jessie  //运行装载了debian:jessie这个镜像的容器实例

sudo docker start web  //启动docker容器其中 web为容器名称(创建容器时候可以指定一个容器实例名称)

sudo docker start 8a136 //可以只传入容器id的前一部分,只要能够判断容器在docker 引擎中id的唯一性就行,启动后可以看到返回结果:容器名称或者容器id标识

sudo docker start nginx phpfpm mysql   //利用多个容器标识名启动多个容器的例子,多个容器之间用空格分隔,注意容器之间启动的先后依赖关系才是最好的

sudo docker stop phpfptm  //  停止容器  本例中phpfptm是一个容器名称

sudo docker kill  web  // 强行杀掉容器 本例中web是自定义的容器名称, 原理:docker kill 命令会直接发送sigkill 信号强制结束容器内的主进程

sudo docker pause web // 暂停名为web的容器实例的运行

sudo docker unpause web //恢复暂停的名为web的容器实例再次为运行状态

sudo docker ps -l  //查看正在运行的容器实例及其内主进程

sudo docker restart web //重启容器  等价于 sudo docker stop web + sudo docker start web  

sudo docker rm web //删除名称为web的容器实例

sudo docker top web //查看容器实例web中运行的进程列表

sudo docker inspect web //查看docker引擎中 名称为web的容器实例的详细信息

sudo docker logs web //查看名为web的容器的运行日志输出信息

sudo docker logs -f --tail 50 web //接下来持续显示运行日志最后50行的内容 -f以为fellow持续显示的意思, --tail代表显示日志文件中尾部内容的意思,本例中tail 50代表尾部50行

sudo docker logs -f --tail 0 web //从当前时间往后持续不间断查看容器web的运行日志内容

sudo docker logs --since 2018-08-09T05:56:29 web  //显示自从给定时间后的运行日志信息,本例中的容器名称为web

sudo docker attach web // 进入到名为web的容器内,并将当前命令终端terminal终端程序连接到容器中的主进程的标准输入与标准输出流中,完成当前显示终端程序terminal与本例中的名为web容器中的主进程程序的交互,相当于容器进入了前台交互运行模式,需要注意的是 docker attach 命令会绑定当前终端到容器实例中运行的主程序上,所以我们可以持续收到进程输出的内容,与此同时,当我们使用 ctrl + c等组合键发出停止信号给容器实例中的主程序时候,虽然收到命令的将会是容器中的主程序,单由于容器和它内部的主程序之间存在生命周期双向绑定机制,所以当主程序被终止时候,容器也将会被终止,也就是说我们用docker attach命令连接到容器后,所执行的操作会和直接使用交互形式运行启动容器的效果一样,所有的操作都是针对容器中的应用程序来进行的,包括程序的停止信号也是通过终端发给容器内的主程序的

___________________________________

sudo docker exec web ps  //在名称为web的linux container容器实例上执行ps程序命令(在名称为web的容器中执行一条全新的ps指令即开启一个新的ps进程)

sudo docker exec web tail -f /var/log/nginx/access.log //其中绿色部分是要在名称为web的容器中执行的linux指令内容,默认情况下,sudo docker exec会将输入命令的terminal终端程序连接到 利用docker exec执行的程序或指令的输出流中,所有如果利用docker exec执行的程序一直在执行下去,我们就会在当前终端程序(terminal中就会显示 )就会看到本例tail -f /val/log/nginx/access.log 指令执行输出的结果

sudo docker exec -it web tail -f /val/lgo/nginx/access.log //分配interactive terminal 交互伪终端给 tail命令,用于tail命令执行内容的显示

___________________

sudo docker commit -m "messagesxxx" absdfsdfsdf7736 ymd/crontab:latest //提交一个容器实例id为absdfsdfsdf7736 的实例(静态化)转换成一个(静态序列化)一个名为

ymd/crontab:latest的镜像 ,其中 -m的意思是提交信息message之意本例中是"messagesxxx",  本例中absdfsdfsdf7736 是容器实例id 

ymd/是镜像的命名空间  cromtab是自定义镜像名称  :latest是镜像的自定义标签名称,  会将这个生成的镜像ymd/contab:latest提交到本地镜像仓库中去

——————————————————————————

sudo docker export 容器实例id >xxx.tar              //不论容器是否处于运行状态,都可以使用docker export 命令将容器保存到一个压缩文件中本例的压缩文件就是xxx.tar

这条指令等价于

sudo docker export -o xxx.tar  容器实例id 

________________________________________________

 

猜你喜欢

转载自blog.csdn.net/zy103118/article/details/109778443