pos是否可以将整个 ubuntu 14 os 包裹在 docker 图像中

is it possible to wrap an entire ubuntu 14 os in a docker image

我有一个 Ubuntu 14 桌面,我在上面做一些开发工作。 这项工作主要围绕使用 PyCharm 的 Django 和 Flask 开发展开 我在徘徊是否有可能将整个 OS 文件系统包装在一个 Docker 容器中,这样我的整个开发环境,包括 PyCharm 和任何其他工具,都将变得可移植

是的,这就是 Docker 的亮点。安装 Docker 后,您可以 运行:

docker run --name my-dev -it ubuntu:14.04 /bin/bash

这将使您以 root 身份进入 Docker 容器的 bash 提示符。它是为了所有意图和 purpos 整个 os 没有任何额外的东西,你将需要安装额外的东西,比如 pycharm、flask、django 等。你的整个环境。你开始的环境什么都没有,所以你必须添加诸如 pip (apt-get install -y python-pip) 之类的东西,以及其他好东西。一旦您拥有整个环境,您就可以退出(使用 exit 或 ^D),然后您将回到 host 操作系统。然后你可以提交:

docker commit -m 'this is my development image' my-dev my-dev

这会获取您刚刚 运行 的 Docker 图像(并根据更改进行更新)并使用标记 my-dev:v1 将其保存在您的机器上,以后您可以随时 运行 这再次使用调用:

docker run -it my-dev /bin/bash

像这样构建一个 Docker 图像更难,一旦你学会了如何制作描述基本图像 (ubuntu:14.04) 和所有内容的 Docker 文件就更容易了您要在名为 Dockerfile 的文件中对其进行的修改。我这里有一个 Docker 文件的例子:

https://github.com/tacodata/pythondev

这构建了我的 python 开发环境,包括 git、ssh 密钥、编译器等。它确实在其中硬编码了我的名字,因此,它对您的开发没有多大帮助(我需要解决这个问题)。无论如何,您可以下载 Docker 文件,用您的详细信息更改它,然后像这样创建您自己的图像:

docker build -t my-dev -< Dockerfile

Docker 集线器上有数百个示例,这是我的起点。

-g