本文是以 centos容器实例演示。
首先确保主机上已经安装好docker并且开启。拉取最新版的 centos镜像:docker pull centos
查看本地镜像列表:docker images
此时,镜像就拉取下来了。接下来在docker创建一个centos的容器实例,并且运行起来。
新建并启动centos容器
命令:docker run -it --name dcentos 470671670cac
470671670cac是上图centos镜像的id。
–name=容器新名字: 为容器指定一个名称; -i: 以交互模式运行容器,通常与 -t同时使用; -t: 为容器重新分配一个伪输入终端,通常与 -i同时使用;另外再提一下几个重要的参数:
-d:后台运行容器,并返回容器ID,也即启动守护式容器;
-P: 随机端口映射;
-p: 指定端口映射,有以下四种格式
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
这样就进入了centos容器的交互式伪终端了。
相当于跑在了 ubuntu主机的docker里面的centos的根目录下。
新打开一个连接,查看一下正在运行的容器实例:docker ps
name就是刚才运行的时候指定的名字。
退出容器
有两种退出方式,命令: exit
容器停止退出; 快捷键: ctrl+p+q
容器不停止退出。
这里采用第一种方式:
这样就停止并且退出容器了。这时再看一下正在运行的容器列表:
空的。可以加上 -l 参数查看,l为上一次运行的,也可以加 -a
,表示all,所有;还可以 -n 次数
,查看前次数次运行的…这里用 -l 就行了: docker ps -l
如果只看id可以这样: docker ps -lq
启动、重启、停止容器
docker start dcentos
dcentos是我刚才的容器指定的名字,也可以替换成容器id。
重启容器:
docker restart dcentos
举一反三,停止容器: docker stop dcentos
另外介绍一个强制停止的方式: docker kill 容器id/容器名称
。
删除已停止的容器实例
docker rm 容器id/名字
也可加 -f
,表示强制删除。
批量删除:
docker rm -f $(docker ps -aq)
docker ps -aq|xargs docker rm
两条命令都是全部删除! 慎用!
$(docker ps -aq) – 类似 js的 el表达式,相当于一个存放着一个容器id的数组或集合的变量。-a
是所有的容器,-q
是只返回容器id。不想删除全部可以把 -a
改为 -n 数量
形式。
第二行命令是以管道形式进行。