一
关于run创建的容器
退出容器时,创建的容器并没有被删除,还是存在于系统中。
docker ps -a 命令
可以查看。
CONTAINER ID:镜像的ID。
IMAGE就:创建该容器使用的镜像。
COMMAND:镜像最后执行的动作。
CREATED:创建时间。
STATUS:容器当前状态。
PORTS:宿主机和容器端口映射关系。
NAMES:容器取得唯一的名称。默认是docker在执行run创建容器是命名的。如果我们想指定名称需要使用name选项。
这样创建的容器名称就是test。但当我们再次创建名称为test容器时,就会出异常。这也说明,docker容器的名称要是唯一的。
二 容器在本地如何保存
默认docker创建的容器都保存在如下目录:
/var/lib/docker/
查看这个目录需要root权限,所以我们需要切换到root用户下。
进去看下,对应的目录下保存在该容器的描述文件。
查看容器配置详细信息
三 简说Docker工作模式
Docker在创建容器时,Docker这时会加载我们指定的只读镜像,并在其上添加一个读写层。如果运行中的容器修改现有的一个已经存在的文件,那该文件将会从读写层下面的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中的该文件的副本所隐藏,当删除docker容器,并通过该镜像重新启动时,之前的更改将会丢失。
这也就是为什么,当我们再次启动容器时,之前的修改都没了的原因。
四 再次进入容器的两种方法
docker attach e5
docker exec -it e5 /bin/bash
通过实践,我们得出如下结论:
1 通过docker exec -it e5 /bin/bash进入容器后,再退出容器时,不会关闭容器,容器还会继续运行。
2 通过
docker attach e5进入容器后,通过ctrl+p+q退出容器时,不会关闭容器,容器还会继续运行。
3
通过
docker attach e5进入容器后,通过exit退出容器时,会关闭容器。
4
通过
docker attach e5进入容器,会出现卡顿现象。
所以推荐使用
docker exec方式进入容器。