npm 包 @heroku-cli/plugin-pg-privatelink 使用教程

阅读时长 5 分钟读完

前言

在现代 Web 应用中,数据库是不可或缺的一部分。然而在生产环境下,我们需要确保数据库的安全性和可靠性。为了解决这个问题,Heroku 推出并且开源了 @heroku-cli/plugin-pg-privatelink 这个 npm 包。

本文将会详细介绍如何使用该 npm 包。

什么是 @heroku-cli/plugin-pg-privatelink?

@heroku-cli/plugin-pg-privatelink 是 Heroku 的一个官方插件,用于设置和管理私有连接的 Heroku Postgres 数据库。通过使用此插件,我们可以安全地在 Heroku 和 Amazon Web Services (AWS) 中使用基于 IP 的连接来访问私有 Heroku Postgres 数据库。这个插件对于一些特定的安全要求的项目来说具有重要意义。

如何安装和配置 @heroku-cli/plugin-pg-privatelink?

安装

我们可以通过以下方式在本地系统中安装该插件:

此命令将在本地全局安装该插件。

配置

在成功安装 @heroku-cli/plugin-pg-privatelink 后,我们需要为 Heroku 应用程序配置私有连接。配置私有连接需要以下信息:

  • 应用程序的名称
  • 私有连接的 IP 地址

在我们进行配置之前,我们需要获取到数据库的 URI。我们可以通过以下命令获取到数据库的 URI:

请将上述命令中的 DATABASE_URL 替换为您的 Heroku Postgres 数据库的 URL。在成功执行上述命令后,您将会在控制台中看到您的数据库的完整信息,其中包含 URI 和连接凭证(用户名和密码)。

如果您还没有 Heroku 应用程序,请先创建一个新的 Heroku 应用程序,并将其与 Heroku Postgres 数据库相关联。

为了配置私有连接,您可以使用以下命令:

此命令将创建一个名为 heroku-vpc-peering 的 Heroku 插件。

我们需要获取到由 Heroku VPC Peering 应用程序生成的私有连接的 IP 地址。这里有两种不同的方式:

  • 如果您的私有连接是通过 peering:connection 选项创建的,则可以使用以下命令来列出该连接的 IP 地址:

  • 如果您的私有连接是通过 vpc:peering-connection 选项创建的,则可以使用以下命令来列出该连接的 IP 地址:

配置私有连接的命令如下:

请将上述命令中的 APP_NAME 替换为您的 Heroku 应用程序的名称,并将 IP_ADDRESS 替换为您的私有连接的 IP 地址。

现在,我们已经成功地配置了私有连接。

如何使用 @heroku-cli/plugin-pg-privatelink?

在成功配置私有连接后,我们可以通过以下方式使用该插件:

请将上述命令中的 APP_NAME 替换为您的 Heroku 应用程序的名称。此命令将连接到您的私有 Heroku Postgres 数据库,并在终端中打开一个 Postgres shell。

示例代码

以下是一个使用 @heroku-cli/plugin-pg-privatelink 的示例代码:

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

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

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

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

    -------------------- -------------
  ---
---
展开代码

结论

@heroku-cli/plugin-pg-privatelink 是 Heroku Postgres 数据库的一个重要功能,为我们提供了一个安全的和可靠的方式来访问 Heroku Postgres 数据库。在开发和生产中,使用私有连接已经成为一些大型项目的标准配置。本文是一份详细的教程,它可以帮助您更好地理解如何使用该 npm 包。

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