我将Meilisearch添加到项目中,现在它的界面可以在浏览器中使用:7700,并且我在浏览器中看到以下内容:
我通过 Laravel Sail 实用程序安装了 Meilisearch,下面是我的 docker-compose.yml 文件的内容:
还有我的.env文件的内容,它与Meilisearch配置相关:
SCOUT_DRIVER=meilisearch
MEILISEARCH_HOST=http://127.0.0.1:7700
MEILISEARCH_KEY=masterKey
FORWARD_MEILISEARCH_PORT=7700
现在我尝试使用以下命令添加第一个索引:
sail artisan scout:import "App\Models\<model name>"
我收到错误:
MeiliSearch\Exceptions\CommunicationException
Failed to connect to 127.0.0.1 port 7700: Connection refused for "http://127.0.0.1:7700/indexes/<model name>s/documents?primaryKey=id".
我注意到项目中没有data.ms文件。它的出现表明meilisearch已经启动。在一些 docker 教程中我看到过这样的命令:
docker run -p 7700:7700 -v "$(pwd)/data.ms:/data.ms" getmeili/meilisearch"
docker pull getmeili/meilisearch:latest && docker run -it --rm \
-p 7700:7700 \
-v $(pwd)/data.ms:/data.ms \
getmeili/meilisearch:latest
...但我没有自定义的 docker 配置,我有 Laravel Sail!!!!!!
为什么 Mailisearch 在浏览器中运行并在其配置的端口上运行,但我在尝试为模型添加索引时看不到 data.ms 文件并收到错误?请帮助我理解问题并解决它。
最佳答案
问题在于配置不正确。
需要将 .env 文件中的主机地址 127.0.0.1 替换为值“meilisearch”,如下所示:
SCOUT_DRIVER=meilisearch
MEILISEARCH_HOST=http://meilisearch:7700
MEILISEARCH_KEY=masterKey
类似地(但这不是问题),有必要将主机地址 127.0.0.1 替换为 docker-compose.yml 文件中“healthcheck”部分中的值“meilisearch”,如下所示:
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--spider", "http://meilisearch:7700/health"]
retries: 3
timeout: 5s
关于laravel - 通过 Laravel Sail 安装并在端口上可用 Meilisearch 不会添加模型索引; date.ms 文件似乎丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71791372/