Docker 初学者指南——如何创建您的第一个 Docker 应用程序

您是开发人员,想从 Docker 入手?这篇文章是为你而写的。

在简要介绍什么是 Docker 以及为什么要使用它之后,您将能够使用 Docker 创建您的第一个应用程序。

什么是Docker?

Docker是 Docker Inc. 开发的一款免费软件。它于 2013 年 3 月 13 日面向公众推出,并从那天起成为 IT 开发领域的必备软件。

它允许用户创建独立和隔离的环境来启动和部署其应用程序。然后将这些环境称为容器。

这将使开发人员可以在任何机器上运行容器。

如您所见,使用 Docker,不再存在依赖或编译问题。您所要做的就是启动您的容器,您的应用程序将立即启动。

但是,Docker 是虚拟机吗?

这是关于 Docker 的最常见问题之一。答案是:实际上,不完全是。

起初它可能看起来像一个虚拟机,但功能并不相同。

与 Docker 不同,虚拟机将包含完整的操作系统。它将独立工作并像计算机一样工作。

Docker 只会共享主机的资源以运行其环境。

Docker VS 虚拟机(版权归Docker 博客所有)

为什么要使用 Docker 作为开发人员?

这个工具真的可以改变开发人员的日常生活。为了最好地回答这个问题,我写了一份您会发现的好处的非详尽清单:

  • Docker 很快。与虚拟机不同,您的应用程序可以在几秒钟内启动并快速停止。

  • Docker 是多平台的。您可以在任何系统上启动您的容器。

  • 容器可以比虚拟机更快地构建和销毁。

  • 设置工作环境不再困难。配置 Docker 后,您将永远不必再次手动重新安装依赖项。如果您更换计算机或有员工加入您的公司,您只需将您的配置提供给他们。

  • 您保持工作空间清洁,因为您的每个环境都将被隔离,您可以随时删除它们而不会影响其余环境。

  • 将项目部署到服务器上以便将其上线会更容易。

现在让我们创建您的第一个应用程序

现在您已经知道 Docker 是什么,是时候创建您的第一个应用程序了!

本简短教程的目的是创建一个显示句子的 Python 程序。该程序必须通过 Dockerfile 启动。

你会看到,一旦你理解了这个过程,它并不是很复杂。

注意:您不需要在计算机上安装 Python。将由 Docker 环境来包含 Python 以执行您的代码。
1. 在你的机器上安装 Docker

对于Ubuntu:

首先,更新你的包:

$ sudo apt update

接下来,使用 apt-get 安装 docker:

$ sudo apt install docker.io

最后验证Docker是否安装正确:

$ sudo docker run hello-world
2. 创建你的项目

为了创建您的第一个 Docker 应用程序,我邀请您在您的计算机上创建一个文件夹。它必须包含以下两个文件:

  • 一个“ main.py ”文件(将包含要执行的代码的 python 文件)。

  • 一个“ Dockerfile ”文件(包含创建环境所需指令的 Docker 文件)。

通常你应该有这个文件夹架构:

.
├── Dockerfile
└── main.py
0 directories, 2 files
3.编辑Python文件

您可以将以下代码添加到“ main.py ”文件中:

#!/usr/bin/env python3print("Docker is magic!")

没什么特别的,但是一旦你看到“ Docker is magic!” 显示在您的终端中,您将知道您的 Docker 正在运行。

3.编辑Docker文件

一些理论:当你想创建你的 Dockerfile 时,要做的第一件事就是问问自己你想做什么。我们的目标是启动 Python 代码。

为此,我们的 Docker 必须包含启动 Python 所需的所有依赖项。一个安装了 Python 的 linux (Ubuntu) 就足够了。

创建 Docker 文件时要执行的第一步是访问DockerHub网站。该站点包含许多预先设计的图像以节省您的时间(例如:所有图像用于 linux 或代码语言)。

在我们的例子中,我们将在搜索栏中输入“Python”。第一个结果是为执行 Python 而创建的官方镜像。完美,我们将使用它!

# 一个 dockerfile 必须始终从导入基础镜像开始。
# 我们使用关键字“FROM”来做到这一点。
# 在我们的示例中,我们要导入 python 图像。
# 所以我们为图像名称写'python',为版本写'latest'。
FROM python:latest

# 为了启动我们的 python 代码,我们必须将它导入到我们的图像中。
# 我们使用关键字“COPY”来做到这一点。
# 第一个参数'main.py'是主机上的文件名。
# 第二个参数'/'是将文件放在图像上的路径。
# 这里我们将文件放在图像根文件夹中。
COPY main.py /

# 我们需要定义运行图像时要启动的命令。
# 我们使用关键字“CMD”来做到这一点。
# 以下命令将执行“python ./main.py”。
CMD [ "python", "./main.py" ]
4. 创建 Docker 镜像

一旦您的代码准备就绪并编写了 Dockerfile,您所要做的就是创建包含您的应用程序的映像。

$ docker build -t python-test . 

-t ”选项允许您定义图像的名称。在我们的例子中,我们选择了“ python-test ”,但您可以输入您想要的内容。

5.运行Docker镜像

创建图像后,您的代码就可以启动了。

$ docker run python-test

您需要将图像名称放在“ docker run ”之后。

给你,就是这样。你通常应该看到“Docker is magic!” 显示在您的终端中。

代码可用

如果您想检索完整代码以便轻松发现或执行它,可以在 GitHub 上供您使用。

-> GitHub:Docker First 应用示例

Docker 的有用命令

在离开您之前,我准备了一份可能对您在 Docker 上有用的命令列表。

  • 列出你的镜像。

$ docker image ls
  • 删除特定镜像。

$ docker image rm [image name]
  • 删除所有现有镜像。

$ docker image rm $(docker images -a -q)
  • 列出所有现有容器(正在运行和未运行)。

$ docker ps -a
  • 停止特定容器。

$ docker stop [container name]
  • 停止所有正在运行的容器。

$ docker stop $(docker ps -a -q)
  • 删除特定容器(仅在停止时)。

$ docker rm [container name]
  • 删除所有容器(仅当停止时)。

$ docker rm $(docker ps -a -q)
  • 显示容器的日志。

$ docker logs [container name]
下一步是什么?

在初学者指南的下一部分。在本文中,您将了解如何使用 docker-compose 通过 Docker 创建您的第一个客户端/服务器端应用程序。

-> Docker 初学者指南 — 如何使用 docker-compose 创建客户端/服务器端

结论

每当您需要一个关于如何创建您的第一个 Docker 应用程序的简单而具体的示例时,您都可以参考这篇文章。如果您有任何问题或反馈,请随时提出。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sonhhxg_柒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值