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
。是的,我在将文件系统更改提交到新映像后启动了新容器。在这种情况下,新的容器内容将与第一个相同。