上一章节介绍了Docker的帮助命令和镜像命令
,这章节介绍常用的Docker的容器命令和docker exec 和docker attach的区别
Docker常用的容器命令 有镜像才能创建容器
docker pull centos
去阿里云拉取centos镜像
docker run [options] 镜像 [command]
新建并运行容器
-
可选参数
options
说明--name
给容器指定一个新的名称-d
后台运行容器即启动守护式容器-i
以交互式形式运行容器,通常与-t
连用-t
为容器分配一个新的伪终端,通常与-i
连用docker run --name 指定镜像名 -it 镜像id或者唯一镜像名
-
可选参数
[command]
默认式\bin\bash
docker ps [options]
列出当前正在运行
的容器
上述图片中显示的参数说明:
CONTAINER ID | IMAGE | COMMAND | CREATED | STATUS | PORTS | NAMES |
---|---|---|---|---|---|---|
容器ID | 镜像名 | 命令(默认:/bin/bash ) |
创建时间 | 状态(UP:运行状态 ,Exited:退出状态 ) |
端口 | 容器名(默认为 系统系统分配,如果需要自定义使用--name 参数) |
- 可选参数
options
说明:-a
列出当前运行的容器
和之前运行过的容器
-l
列出当前运行的容器
-n 数量
列出最近创建的前n个容器-q
只显示容器的ID
exit
终止容器的运行并退出容器
crl+P+Q
退出容器,但是容器还在运行
docker start 容器ID或者容器名
启动容器
docker restart 容器ID或者容器名
重启容器
docker stop 容器ID或者容器名
缓慢的停止容器
docker kill 容器ID或者容器名
强制的停止容器
docker rm 容器ID或者容器名
删除已停止的容器
docker rm -f 容器ID或者容器名
强制删除已停止或在运行的容器
docker rm -f $(docker ps -qa)
一次性删除多个容器
docker top 容器ID
查看容器
内运行的进程
docker inspect 容器ID
查看容器内部细节
docker exec -it 容器ID
进入正在运行的容器,进行命令行交互
docker attach 容器ID
进入正在运行的容器,进行命令行交互
docker cp 容器ID:容器内目录 目的主机路径
docker exec xx
和docker attach xx
的区别
相同点
:两者都是进去运行的容器并进去命令交互
不同点
:
-
docker exec
可以在后面追加命令,来获取容器内的东西,没必要一定要进入容器才能获取。
2 .docker attach
想要获取正在运行容器内的东西,必须进入容器才能获取
注意
:docker attach 容器ID 等价于 docker exec -it 容器ID /bin/bash