Docker容器命令

前提

执行容器的前提是有镜像 。

#创建并启动容器
docker run [options] images [command][args]
// option 的说明 
--name='容器的新名字' :为容器指定一个名称 ;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P: 随机端口映射;
#示例
docker run -it -d -P --name="vaicai" 0f3e07c0138f

1570794547564

#交互式运行  在容器执行时加入 /bin/bash
docker run -it centos /bin/bash 

1570794775509

此时会进入到容器的内部

docker ps [options] 列出运行的容器

docker ps  [options] 

1570794944181

#[options]语法说明
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器
-n:显示最近n个创建的容器
-q :静默模式,只显示容器编号
--no-trunc :不截断输出

退出容器

(1) exit :停止运行的容器并退出

(2) ctrl+p+q :容器仍在运行但退出容器界面

启动容器

docker start 容器名称+tag 或者ID

docker start 容器ID或容器名称

重启容器

docker restart 容器ID或容器名称

停止容器

docker stop 容器ID或容器名称

强制停止容器

docker kill 容器ID或容器名称

删除已停止的容器

docker rm 容器ID  //删除单个容器
docker rm -f $(docker ps -aq)  //删除所有容器

查看容器日志

docker logs -tf --tail 10 容器ID
//参数解释 
//  -t 时间戳  -f 跟随最新的日志打印  --tail 10 显示打印最后的十条

查看容器运行的进程

docker top 容器ID

查询容器内部细节

docker  inspect 容器ID

进入正在进行的容器并以命令行交互

//方式一
docker exec -it 容器ID /bin/bash
//方式二
docker attach 容器ID 

区别  
exec 在容器中打开新的终端   并且启用新的进程 。在交互行使用exit退出容器仍会在运行。关闭的是新的终端
attach 直接打开容器终端,不会使用新的进程

拷贝容器内的文件至主机

docker cp 容器ID:容器内的路径 主机目录