Docker:向 5 岁小孩讲解。👶🏻
刚开始接触 Docker 的时候,一切都让我摸不着头脑。不过别担心,我在这里 😉
所以,你需要了解的关于 Docker 的一切都包含在一篇博客里。别担心——我会尽量简洁明了⚡
我会带你了解一些概念——容器、镜像等等。然后我们会自己编写Dockerfile
一个容器化非常简单的 Python 应用程序!
目录
什么是docker?
Docker 是一种容器化应用程序的方法(将代码放入可以独立运行的容器中)。它神奇地创建了一台虚拟计算机,但你猜怎么着——它们实际上并不是虚拟计算机。
容器是没有主机操作系统的盒子,因此它们独立于其运行的设备。
想象一下:有一只蜜蜂只喜欢住在自己的蜂巢里,如果它住在别的地方就无法工作。你只需把它困在一个看起来和摸起来都和它蜂巢一模一样的盒子里。这就是集装箱化。
容器采用Images
Docker 镜像
Docker 镜像就像模板一样——一本包含制作工艺品所需的一切的手册。或者换句话说,它包含一组创建容器的说明。
但是如何制作这些图像(以便稍后制作容器)?
这是使用 Dockerfiles 完成的。
关于 Dockerfiles
Dockerfile 是一个文本文档,其中包含用户可以在命令行中调用来组装镜像的所有命令。
好的,让我们一起创建一个 Dockerfile。
现在,我们就来开始 docker HANDS ON!
在您的设备上快速下载 docker:https://www.docker.com/get-started
现在您有了它,让我们编写一个简单的 Flask 应用程序并将其容器化!
现在,尽管这可能非常基础,但它实际上需要很多东西才能运行:
- Python 3.9
- Flask(正在运行
pip install flask
) - 暴露于 5000 端口
某些程序可能只能在特定的操作系统上运行 - 例如仅限 Windows 或仅限 Linux 的程序。
所有这些问题都可以通过编写一个简单的dockerfile来解决,它可以为我们创建一个docker镜像。
因此,你需要创建一个名为Dockerfile
(确切地说,不带任何文件扩展名)的文件。
以下是演练:
- 使用 FROM 使用 python 基础镜像
- 使用 COPY 将 app.py 文件复制到容器中
- 使用 RUN 来 pip install flask
- 容器启动时使用 CMD 运行“python app.py”
小修正:该文件应该命名为 Dockerfile
构建镜像并运行容器
现在,使用命令构建 docker 镜像docker build
,然后使用docker run .
命令运行该镜像。
您还可以使用--tag
为图像命名,以便以后更轻松地运行
docker build --tag flask .
docker run --name flask -p 5000:5000 flask
这里,--name
是要运行的容器的名称(我将其命名为 flask),-p 将 docker CONTAINER 的端口设置为您的计算机,以便您可以在 上看到您的应用程序localhost
。最后,flask
名称中的 是要运行的镜像的名称。
更多命令
就是这样!
使用“docker ps”命令获取正在运行的容器列表,
“docker ps -a”获取所有容器列表,
“docker images”获取镜像列表
“docker --help”获取所有命令列表
随意使用这些命令,它们都是不言自明的
如果您在此博客中学到了一些东西,请务必💖它,如果您真的喜欢它,请关注我!
文章来源:https://dev.to/dhravya/docker-explained-to-a-5-year-old-2cbg