部署 Logto 服务
Logto (opens in a new tab) 是一个开源的身份验证服务,可以帮助你在你的应用程序中快速实现身份验证,同时也是最著名的 Auth0 (opens in a new tab) 开源替代品。
这篇文章将教你如何在 Zeabur 上通过服务市集轻松部署一个自己的 Logto 服务,并且绑定自己的域名,让你的其他网站能夠用自己部署的 Logto 服务来验证身份。
步骤一:建立项目
首先,我们需要先在 Zeabur 上建立一个项目,请前往 项目列表 (opens in a new tab) 页面,你会看到你的许多项目,而「建立项目」按钮就在所有项目的最后面。
步骤二:部署 PostgreSQL 服务
Logto 将使用者身份的数据储存在 PostgreSQL 数据库中,请点击「建立服务」并选择「服务市集」,你将在列表中找到 PostgreSQL。
选择 PostgreSQL 后,你可以给该服务输入一个自定义的名称,然后点击部署。
步骤三:建立数据库
为了让 Logto 服务能夠正常运行,我们需要先在 PostgreSQL 数据库中建立一个名为 logto
的数据库。
请先使用任意 PostgreSQL 客户端连接进入你的 PostgreSQL 服务。在本文,我们使用 psql (opens in a new tab) 来连接。
你可以在 Zeabur 控制台中,PostgreSQL 服务的「连接」区块中找到对应的 psql 连接指令或其他连接信息。
psql postgresql://root:password@infra.zeabur.com:12345
接着,请在 psql 中输入以下指令来建立 logto
数据库:
CREATE DATABASE logto;
步骤四:部署 Logto 服务
在 Zeabur 控制台中,请点击「建立服务」并选择「服务市集」,你将在列表中找到 Logto。
选择 Logto 后,你可以给该服务输入一个自定义的名称,然后点击部署。
如果你先部署了 Logto 而还没有部署 PostgreSQL,那么你需要在部署 PostgreSQL 服务后重新启动 Logto 服务,才能让 Logto 取得正确的数据库连接信息。
步骤五:绑定域名
在 Zeabur 控制台中,Logto 服务的「域名」区块中,你可以为其绑定一个域名,这个域名可以是你自己的域名,也可以是 Zeabur 提供的免费域名。
关于如何为你的服务绑定域名,请参阅 绑定域名。
绑定完域名后,我们需要让 Logto 服务知道我们绑定的域名,请在 Zeabur 控制台中,Logto 服务的「环境变量」区块中,新增一个名为 ENDPOINT
的环境变量,并将其值设定为你绑定的域名,例如 https://logto-test.zeabur.app
。
新增变量后,服务将自动重启,请等待服务重启完成。
步骤六:登录并设定 Logto
在 Zeabur 控制台中,Logto 服务的「连接」区块中,有一个按钮可以开启 Logto 的管理界面,请点击该按钮。
开启后,会进入 Logto 服务的初始化页面,请跟随引导完成服务的初始化流程,设定管理员帐号及密码。