发布于 2026-01-06 0 阅读
0

Docker 入门:Docker Playground

Docker 入门:Docker Playground

在之前的文章中,我磕磕绊绊地完成了关于如何在 Windows 11 上安装 Docker 的教程;然而,我当时也明确表示,我对Docker 的使用一窍不通(甚至连它是什么都不知道)。所以,我打算通过这篇文章,从 Docker 官网上的教程入手,学习更多 Docker 知识。Docker Playground是他们提供的免费学习平台。我还会简单介绍一下 Docker 本身,并讨论如何以这个微服务为基础创建一个 Dockerfile。让我们开始吧!

Docker为何如此强大?

我在上面链接的文章中稍微提到过这一点,Docker 的功能非常强大。这是因为基于容器的架构允许创建应用程序的多个实例,开发者可以根据需要自定义和复制这些实例,而不会干扰用户系统上的任何其他内容。

Docker 将这种体验提升到了一个新的层次,它允许开发者将运行应用程序所需的一切都打包到一个易于分发的软件包中,然后将其部署到任何能够支持该应用程序的系统上。这使得应用程序更易于管理——因为开发者不再依赖用户拥有(大部分)必要的依赖项——并且具有无限的可扩展性。这一点至关重要,因为它使用户能够在保持与同一后端集成的情况下,获得更快、更轻便的应用程序体验。

考虑到这一点,我们来试一试。

Docker Playground

Docker Playground是 Docker 官方提供的免费在线 Docker 学习教程。完成初始步骤后,他们会提供一份详尽的指南,帮助你快速上手容器。接下来,我会介绍一些入门步骤,剩下的就交给你了!

步骤 1:访问 Play With Docker 并登录

首先,我们将导航到“Play with Docker”起始页面,它应该看起来像这样:

使用 Docker 起始页

点击“开始”,系统会提示您使用 GitHub 或 Docker 帐户登录。您可以选择最方便的方式登录,但如果您决定创建 Docker 帐户,则无需购买任何内容——本教程和 Docker Playground 都是免费的。

步骤 2:创建新实例

登录后,点击“添加新实例”按钮,在 Docker Playground 中创建一个虚拟化容器。如果操作成功,您的页面将如下所示:

实例创建的页面

步骤 3:访问​​ Docker 101 教程

要访问 Docker 101 教程,您必须使用刚刚创建的实例。因此,请在 Docker Playground 的命令行界面中输入以下命令并按 Enter 键:

docker run -dp 80:80 docker/getting-started:pwd

该命令执行完毕后,您会在屏幕顶部的“打开端口”按钮旁边看到一个超链接的“ 80 ”,如下所示:

端口 80 超链接图像

点击此链接,即可进入 Docker 101 教程。从那里,您可以浏览教程并通过 Docker Playground 了解更多关于 Docker 的信息!

创建 Dockerfile

Dockerfile 是一组指令,称为Docker 镜像,Docker 使用该镜像在容器内构建应用程序。这些指令本质上定义了 Docker 容器如何处理应用程序的运行过程,因此在尝试运行应用程序之前,确保容器中存在此文件至关重要。下面,我们将查看一个为NewsAPI 微服务创建的 Dockerfile 示例,然后展示正确配置此 Dockerfile 可以带来哪些好处。

如何创建 Dockerfile?

配置容器时,通常需要创建自定义 Dockerfile。为此,只需在容器目录中创建一个名为“Dockerfile”的文本文件,然后插入容器所需的命令即可。

Dockerfile 中包含哪些内容?

这取决于 Dockerfile 的用途,但在这个例子中,我们实际上有两个 Dockerfile:一个用于可视化 Web 组件,另一个用于访问 API 的服务器。为了避免混淆,我们只关注服务器端。以下是该文件的内容:



FROM node:12

WORKDIR /home/node/app

COPY package.json ./
RUN yarn install

COPY . .

CMD [ "yarn", "start" ]


Enter fullscreen mode Exit fullscreen mode

此文件中大写的单词代表命令,Docker 使用这些命令来创建适合应用程序运行的环境——无论应用程序运行在什么系统上。让我们逐一查看这些命令:

首先我们看到的是“FROM”指令。这始终是 Dockerfile 中的第一个命令,因为它表明此 Dockerfile 是容器的基础镜像。

工作目录

此指令键用于设置后续命令运行的工作目录。

复制

首次显示此命令时,它会将应用程序的 package.json 文件复制到工作目录。我们可以通过命令./后面的 `--wrap` 来判断package.json,它表示这是复制的目标目录。在这种情况下,复制该文件后,我们就可以使用以下命令安装应用程序所需的依赖项:

跑步

RUN 可以用于多种用途,但在本例中,它用于运行一个yarn install命令——该命令会安装所有必要的依赖项,以使我们的应用程序能够在 Docker 容器中运行。

复制(再次)

我们之前已经稍微讨论过 COPY 命令,但这次被复制的是一个简写,. .表示所有内容(.)都被复制到工作目录,从而可以配置容器以与应用程序一起工作。

CMD

最后,我们来看看 CMD 命令。CMD 命令接收一个参数化命令数组,这些命令会在 Dockerfile 用于构建应用程序时执行。因此,CMD 的数组对应于 ` yarn start` yarn start,这是一个使用yarn启动应用程序的命令。由于这是 Dockerfile 中的最后一个命令,至此,我们的应用程序已在容器内构建完成!

如果您想了解更多关于 Dockerfile 命令的信息,本文将通过精彩的示例逐一讲解。

接下来是什么?

此时,您已使用 Dockerfile 成功构建了应用程序,可以运行它了。在本例中,这需要运行以下docker-compose up命令。该命令允许您查看示例应用程序的前端,其中列出了来自 NewsAPI 的超链接文章:

新闻应用结果

文章来源:https://dev.to/dronk6/getting-started-with-docker-docker-playground-28h3