Docker Container常用命令

原创转载请注明出处:http://agilestyle.iteye.com/blog/2354873

 

docker run —— 交互式容器

docker run是最常用也是最复杂的命令,通过docker help run可以看到该命令有很多选项。


 

其中最常用的的选项包括:

  • -i -t 这两个选项经常一起使用,可以缩写为-it,用于创建交互式容器
  • -d 让容器运行在后台,用于创建守护式容器
  • --name 为容器指定一个名称

容器运行成功后,会返回一个64字符的容器ID,作为容器的唯一标识。

 

通过如下命令运行一个交互式容器

sudo docker run -it centos:6 /bin/bash
  • -it 指定要创建交互式容器
  • centos:6 以仓库:TAG的形式指定镜像名称
  • /bin/bash 容器对应的进程,会启动一个新的shell


Note:

刚开始如果没有使用docker pull将镜像拉下来的话,执行上述命令会提示没有找到镜像,会首先将镜像pull下来,这就会遇到一个国内Docker源下载非常慢的问题,推荐的解决办法是使用DaoCloud,会大大加快下载镜像的速度

使用官方源:


使用DaoCloud源:


 

通过命令sudo docker run -it centos:6 /bin/bash,会启动一个新的shell,并运行在容器环境中。由于是一个交互式容器,所以当离开当前的shell,被这个新的shell带入到容器的虚拟世界中,此后会在这个shell里面执行的任何命令,都是相对于这个虚拟世界的。

 

当在新的shell里面执行exit,就结束了这个bash进程,从而也结束了这个容器,这样就从虚拟世界又返回到宿主机的现实世界


 

docker run —— 守护式容器

交互式容器适合一些临时性的任务,当退出bash的时候,交互式容器的生命也将结束。大多数场合,需要的是守护式容器。通过如下方式运行守护式容器:

sudo docker run -d daocloud.io/daocloud/dao-redis:master-init
  • -d 创建守护式容器
  • 没有指定命令,那么就会使用镜像所提供的默认命令。redis镜像的默认命令是/run.sh

Note:

守护式容器运行在后台,这样就可以继续留在当前的shell进行其他操作 

 

docker ps

通过docker ps命令可以查看容器的基本信息,包括容器ID、命令、状态等

sudo docker ps


 

docker inspect

docker ps命令只能查看容器的基本信息;docker inspect命令则可以查看容器的详细信息。 

sudo docker inspect [容器ID]


Note:

docker inspect返回的信息是JSON格式的 

 

docker inspect -f

可以指定查看某种信息,例如查看容器的IP

sudo docker inspect -f '{{.NetworkSettings.IPAddress}}' [容器ID]


 

docker stop

docker stop命令用来停止一个正在运行的守护式容器(如果想快速停止可以使用docker kill

sudo docker stop [容器ID]


 

docker rm

容器停止后,不会被删除,docker rm命令用来删除容器

sudo docker rm [容器ID]


Note:

删除完之后,再次运行sudo docker ps -a,容器已经消失了

 

docker logs

使用docker logs查看容器日志

sudo docker logs [-f] [-t] [--tail] [容器ID]
  • -f    --follows=true | false 默认为false
  • -t   --timestamps=true | false 默认为false
  • --tail="all" 


 

docker top

使用docker top查看守护式容器内进程

sudo docker top [容器ID]


 

docker exec

使用docker exec在运行的守护式容器内启动新进程

sudo docker exec [-d] [-i] [-t] [容器ID] [COMMAND][ARG...] 


 

 

 

启动交互式容器后,可以使用Ctrl + P和Ctrl + Q组合将交互式容器转为守护式容器,之后可以使用docker attach命令将守护式容器转为交互式容器


 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值