Docker 应用部署教程

阅读时长 5 分钟读完

什么是 Docker?

Docker 是一个容器化平台,使开发人员可以轻松创建、部署和运行应用程序。它利用容器技术将应用程序及其所有依赖项打包成可移植的容器,可以在任何地方运行,包括开发人员的工作站、测试环境、生产环境等等。

Docker 的优势

相比于传统的应用程序部署方式,Docker 有以下几个优势:

  1. 快速部署:Docker 容器在几秒钟之内启动,相比于传统应用服务器需要花费几分钟时间来启动,速度更快。

  2. 环境隔离:每个 Docker 容器都是独立的,一个容器中的应用程序不能影响其他容器中的应用程序。这样可以消除应用程序之间的冲突。

  3. 灵活性:Docker 可以在任何容器中运行任何应用程序,不受任何限制。

  4. 可移植性:Docker 容器可以在任何环境中运行,无论是在开发人员的个人电脑、云平台还是其他任何地方。

接下来我们将使用 Docker Compose 部署一个简单的 Node.js 应用程序,并介绍 Docker Compose 的基本使用方法。

安装 Docker 和 Docker Compose

首先,您需要在您的计算机上安装 Docker 和 Docker Compose。这两个工具的安装方法可以在官方文档中找到。

安装完成后,您可以使用下面的命令来验证 Docker 和 Docker Compose 是否已经正确安装。

编写 Docker 配置文件

在您的项目根目录中创建一个名为 docker-compose.yml 的文件,该文件包含应用程序的 Docker 配置信息。

-- -------------------- ---- -------
-------- ---

---------
  ----
    ------ -------
    --------
      - ----------
    ------------ ----
    -------- --- -----
    ------
      - -----------
    ------------
      ----- ----

让我们看看这个文件中的每个元素。

  • version: "3":指定 Docker Compose 的版本。
  • services::定义服务,我们只有一个服务,即应用程序后端。
  • app::服务名称,可以根据您的实际情况进行更改。它定义了需要在 Docker 中运行的应用程序。
  • image: node:14:我们将使用 Node.js 的官方 Docker 镜像作为我们的基础镜像。
  • volumes::将项目文件夹映射到 Docker 容器中。这样,Docker 容器就可以读取和写入项目文件夹中的文件。
  • working_dir: /app:设置 Docker 容器的工作目录为 /app
  • command: npm start:在启动 Docker 容器时运行的命令。在这种情况下,我们运行 npm start 命令来启动 Node.js 应用程序。
  • ports::将 Docker 容器中除了外部世界访问的端口(在这个例子中是 8080,在外部世界访问的端口)映射到主机的端口 8080
  • environment::设置环境变量。在这种情况下,我们设置了 PORT 环境变量为 8080

创建应用程序

接下来,我们将创建一个简单的 Node.js 应用程序。在项目根目录中创建一个名为 app 的文件夹,然后在该文件夹中创建一个名为 index.js 的文件,该文件包含以下代码。

-- -------------------- ---- -------
----- ---- - ---------------

----- ---- - ---------------- -- ----

----- ------ - ----------------------- ---- -- -
  ------------------ - --------------- ------------ --
  -------------- ----------
--

------------------- -- -- -
  ------------------- ------- -- --------------------------
--

这是一个非常简单的服务器,它在监听端口 process.env.PORT || 3000 上,如果没有通过 PORT 环境变量传递端口,则默认为 3000。当我们向 http://localhost:3000 发送请求时,它会响应 Hello World!\n

构建镜像

现在我们已经准备好将应用程序部署到 Docker 容器中了。使用以下命令构建 Docker 镜像:

这将基于 Dockerfile 构建镜像,该镜像包含应用程序的依赖项。

启动容器

一旦镜像构建成功,就可以通过以下命令启动容器:

这将启动 Docker 容器并运行我们的应用程序。当您在浏览器中访问 http://localhost:8080 时,您应该看到 Hello World! 消息。

停止容器

要停止 Docker 容器,请使用以下命令:

总结

这是一个简单的 Docker 应用程序部署教程,向您展示了如何使用 Docker Compose 部署 Node.js 应用程序。我们介绍了 Docker 的优势、安装方法和基本配置,以及如何构建镜像、启动容器和停止容器。希望这篇文章能够帮助您了解 Docker 的应用程序部署,并在未来的项目中使用它来简化开发和部署过程。

参考代码:https://github.com/Super3G/Docker-tutorial

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6450e39d980a9b385b9c44b4

纠错
反馈