🔎

MeilisearchをさくっとCloud Runで構築する方法

2023/03/09に公開

概要

2023年2月16日のCloud Runのアップデートにより、Docker Hubの参照が可能となりました。
今回は、Docker Hubを用いてMeilisearchをさくっとCloud Runで起動させる方法を紹介します。

You can now deploy public container images from Docker Hub to Cloud Run.

https://cloud.google.com/run/docs/release-notes#February_16_2023

注意事項

さくっと構築する方法ですので、本番利用される際は詳細な設定が必要となります。
Cloud Runは無料枠はありますが、課金される可能性がありますのでご注意ください。

Meilisearchとは

全文検索サービスです。詳しくは、別途詳しい記事などをご参照ください。

https://www.meilisearch.com/

Meilisearch v1.1.0より漢字対応が含まれるためより一層、日本での利用が増えると感じています。

使用するDocker

Meilisearchは、Docker HubでDockerを提供してくれています。今回はこちらを使用します。

https://hub.docker.com/r/getmeili/meilisearch/tags

Cloud Runで構築

初期設定

設定項目 補足事項
コンテナイメージURL docker.io/getmeili/meilisearch:v1.1.0-rc.1 https://などのスキーマは不要です。 現在(2023/03/10)の最新版のタグを使用
インスタンスの最大数 1 デフォルトは、100のため最低限の台数に変更
認証 未認証の呼び出しを許可 公開APIとして使用するためこちらを選択
コンテナポート 7700 デフォルトは、8080のため、Meilisearchのポートに変更
実行環境 第2世代 ネットワークファイルシステムをサポートしているため選択(※デフォルトのままでも動きます)

上記はデフォルトの設定値から変更した部分を記載しています。リージョンなどスペックはよしなに変更ください。

起動

上記の初期設定を行い[作成]ボタンをクリックすることですぐにMeilisearchが起動します。

初回起動の場合は、MASTER KEYが設定されていません。

MASTER KEYを設定

Cloud Runのログを確認すると MASTER KEY を自動で生成してくれています。

こちらを[新しいリビジョンの編集とデプロイ]から環境変数を設定します。

環境変数名: MEILI_MASTER_KEY

※セキュリティが気になる場合は、Secret Managerを使用しましょう。今回はさくっと利用したいため環境変数で設定しています。

環境変数を設定後、[デプロイ]ボタンをクリックすることで値が反映(デプロイ)されます。

もう一度、Meilisearchにアクセスし、今度は MASTER KEY が入力できるようになっています。

これでさくっとMeilisearchが構築できました。

meili_dataはどうすれば良いのか問題

Docker Hubを用いて、Cloud Runで起動しているので、meili_dataはどうすれば良いのか問題があります。
こちらについては、まだ解は見つけれていません...

Cloud Runの実行環境 第2世代でネットワークファイルシステムをサポートしているため何かしらやりようはあると考えています。
getmeili/meilisearch のDockerをベースにした独自にDockerfileを定義する必要がありそう...

まとめ

今回、MeilisearchをさくっとCloud Runで構築する方法を紹介しました。
Cloud RunがDocker Hub対応してくれたおかげで本当にさくっと構築することができました。
meili_dataはどうすれば良いのかまだ解決していませんが、すぐに構築できて破棄できる環境が作れるのは嬉しいことです。

構築したMeilisearchの環境が不要になった際、削除を忘れないようにしましょう。無駄な課金には気をつけましょう。

Discussion