在 DigitalOcean 上部署 Meilisearch 实例

    第一部分:在 Droplet 上部署 Meilisearch

    1. 创建一个新的 Droplet

    DigitalOcean Droplet 是基于 Linux 的虚拟机,您可以在其中运行您的应用程序。

    登录到您的 DigitalOcean 账户后,点击页面右上角的绿色 “Create” 按钮,然后选择 “Droplets”。

    Selecting "Droplets" from the "Create" dropdown

    请参考 DigitalOcean 的文档,了解更多关于创建和配置 Droplet 的信息。

    2. 为您的 Droplet 选择一个区域

    选择您想要部署 Droplet 的区域。请记住,您离用户越近,他们使用 Meilisearch 的搜索体验就越好。

    Selecting the London data center region

    3. 选择 Meilisearch 镜像

    默认情况下,DigitalOcean 显示 “OS” 选项卡。选择 “Marketplace” 选项卡,搜索 “Meilisearch”,然后选择镜像。

    Search results for 'Meilisearch' in Marketplace

    4. 选择 Droplet 大小

    在这里您可以选择您的 Droplet 将拥有的 RAM、存储和 CPU 核心数量。根据您的需求选择您的方案。当处理大型数据集时,内存优化选项将为您提供更好的结果。

    Selecting the plan based on your usage

    5. 选择一种身份验证方法

    您可以使用 SSH 密钥或密码来访问您的 Droplet。我们建议使用 SSH 密钥,因为它们更安全。

    Selecting SSH keys for authentication

    选择您想要添加到您的 Droplet 的 SSH 密钥。如果您没有密钥,按照 DigitalOcean 的说明创建密钥

    6. 选择您的 Droplet 名称和标签

    在这里您可以选择在您的 DigitalOcean 账户中各处可见的名称。Droplet 名称只能包含字母数字字符、破折号和句点。

    Adding 'meilisearch-droplet-name' as the hostname

    标签非常适合用于管理资源。它们是您分配给 droplet 的自定义标签。标签可以包含字母、数字、冒号、破折号和下划线。您可以为一个资源使用多个标签。尝试根据 droplet 的功能命名标签。

    The search bar, meilisearch, and search-team tags

    7. 点击 “Create Droplet”

    The "Create Droplet" button

    8. 测试 Meilisearch

    创建完成后,点击 Droplet 的公共 IP 地址以复制它

    meilisearch-droplet-name instance's IP: 165.227.56.77

    将其粘贴到您的浏览器中。如果您可以访问本地预览,则 Meilisearch 已准备就绪,可以使用了。

    Meilisearch local preview

    第二部分:在您的 Meilisearch Droplet 中配置生产设置

    要配置 Meilisearch 以在 DigitalOcean Droplet 上用于 生产环境使用 SSH 访问您的 Droplet,脚本会引导您完成整个过程。或者,使用 Droplet 控制台 通过您喜欢的浏览器进行访问。

    1. 将您的域名指向您的 Droplet

    如果您想使用自己的域名,请单击“创建”按钮并选择“域名/DNS”。

    Selecting Domain/DNS from the Create menu

    在“输入域名”字段中输入您的域名,然后单击“添加域名”。

    Domains tab on the Networking page

    这应该可以开箱即用。您的域名现在应该已链接到您的 Meilisearch 实例。使用 curl 访问它并验证 DNS 是否已正确配置。

    curl -v http://<your-domain-name>/health
    

    服务器应答复 200 OK 状态代码和以下正文 {"status": "available"}

    …
    HTTP/1.1 200 OK
    …
    {"status": "available"}
    …
    

    2. 设置主密钥和 SSL (HTTPS)

    Meilisearch 当前在开发环境中运行。我们尚未设置主密钥,这意味着任何人都可以读取/写入 Meilisearch 实例。由于我们尚未使用 HTTPS,因此此配置对于生产环境是不安全的。

    要开始配置过程,请通过 SSH 连接到您的 Droplet,或在您喜欢的浏览器中使用 Droplet 控制台并按照说明进行操作。

    2.1. 运行配置脚本

    打开终端并使用您从 DigitalOcean 获取的 IP 地址启动新的 SSH 连接。

    在您的终端中输入以下命令,然后按 Enter 键以建立连接

    ssh root@DIGITAL_OCEAN_IP_ADDRESS
    

    输入 yes 并按 Enter 键以接受身份验证过程。

    注意

    如果您正在使用 Droplet 控制台,则不需要上述命令。

    脚本将自动运行,询问您的设置和所需配置。如果您想随时再次运行此脚本,可以使用以下命令执行此操作

    meilisearch-setup
    

    如果您使用 Droplet 控制台,相同的脚本将自动运行。

    3. 享受您开箱即用的 Meilisearch Droplet

    您的 Meilisearch Droplet 已准备好在生产环境中使用。

    要检查一切是否运行顺畅,请对 /health 路由执行 HTTP 调用

    curl -v https://<your-domain-name>/health
    

    服务器应答复 200 OK 状态代码和以下正文 {"status": "available"},如下例所示

    …
    HTTP/1.1 200 OK
    …
    {"status": "available"}
    …