Ubuntu 在哪里可以找到我使用Docker安装的操作系统?
我在终端上运行了以下命令:Ubuntu 在哪里可以找到我使用Docker安装的操作系统?,ubuntu,docker,virtualbox,docker-machine,Ubuntu,Docker,Virtualbox,Docker Machine,我在终端上运行了以下命令: docker-machine create --driver virtualbox celery-test docker-machine env celery-test eval $(docker-machine env celery-test) docker run -it --name="simple_flask" ubuntu:latest /bin/bash 这下载了最新版本的Ubuntu,并以根用户身份启动终端 然后我安装了python3,pip3和芹菜。
docker-machine create --driver virtualbox celery-test
docker-machine env celery-test
eval $(docker-machine env celery-test)
docker run -it --name="simple_flask" ubuntu:latest /bin/bash
这下载了最新版本的Ubuntu,并以根用户身份启动终端
然后我安装了python3
,pip3
和芹菜
。我试图安装erlang
,但不知何故,终端在一段时间后停止响应,因此我不得不关闭它。现在我不知道怎么回到终点站
如何启动Ubuntu的终端?图像存储在哪里?当您运行docker时
发生了两件事:
- 创建了一个名为“simple_flask”的容器
- 容器是以
bash
作为进程启动的,进程以TTY的交互模式进行
如果关闭终端,则可能会终止交互式会话,从而终止bash
进程,因为bash
退出,该进程将容器移动到stopped
状态
此时,您有一些选择:
- 您可以运行
docker ps
,查看容器是否仍在运行。如果是,您可能仍然能够使用docker-attach-simple\u-flask
连接到正在运行的主进程(bash
)
- 您可以使用
docker ps-a
列出所有容器,以查看正在运行和停止的容器。如果容器停止,您可能可以再次启动它,并使用docker start-a-i smiple\u flask
将其连接到容器上
- 您可以将所有挂起的文件系统更改提交到新映像并启动该映像。使用
docker diff simple_flask
查看图像中的更改,并使用docker commit simple_flask_image1
创建带有这些更改的新图像flask_image1
。然后,您可以使用docker run-it--name=“simple\u flask2”flask\u image1/bin/bash根据此图像启动一个新容器
希望这对一些容器基础知识有点帮助。当您运行docker时,发生了两件事:
- 创建了一个名为“simple_flask”的容器
- 容器是以
bash
作为进程启动的,进程以TTY的交互模式进行
如果关闭终端,则可能会终止交互式会话,从而终止bash
进程,因为bash
退出,该进程将容器移动到stopped
状态
此时,您有一些选择:
- 您可以运行
docker ps
,查看容器是否仍在运行。如果是,您可能仍然能够使用docker-attach-simple\u-flask
连接到正在运行的主进程(bash
)
- 您可以使用
docker ps-a
列出所有容器,以查看正在运行和停止的容器。如果容器停止,您可能可以再次启动它,并使用docker start-a-i smiple\u flask
将其连接到容器上
- 您可以将所有挂起的文件系统更改提交到新映像并启动该映像。使用
docker diff simple_flask
查看图像中的更改,并使用docker commit simple_flask_image1
创建带有这些更改的新图像flask_image1
。然后,您可以使用docker run-it--name=“simple\u flask2”flask\u image1/bin/bash根据此图像启动一个新容器
希望这对一些容器基础知识有所帮助。请参阅docker exec
文档请参阅docker exec
文档是否可以用新图像替换以前的图像?或者我需要总是创建一个新图像并删除旧图像。不,容器文件系统更改是在现有图像上的一个新层。您无法将其从原始容器中交换。我这样做是因为您在上一个命令中将容器重命名为simple\u flask2
。是的,我在将文件系统更改提交到新映像后启动了新容器。在这种情况下,新容器内容将与第一个相同。是否可以用新图像替换以前的图像?或者我需要总是创建一个新图像并删除旧图像。不,容器文件系统更改是在现有图像上的一个新层。您无法将其从原始容器中交换。我这样做是因为您在上一个命令中将容器重命名为simple\u flask2
。是的,我在将文件系统更改提交到新映像后启动了新容器。在这种情况下,新的容器内容将与第一个相同。