我想在laravel sail项目中使用mongodb。如何解决找不到合适的服务器(serverSelectionTryOnce
set):[connection refused calling hello on 'mongodb:21017']
下一个代码返回此错误
try {
$l = DB::connection('mongodb')->getMongoClient()->listDatabases();
dd($l);
} catch (\Exception $e) {
echo $e->getMessage();
}
我的env配置
MONGO_DB_HOST=mongodb
MONGO_DB_PORT=21017
MONGO_DB_DATABASE=test
MONGO_DB_USERNAME=sail
MONGO_DB_PASSWORD=password
我的docker-compose
mongodb:
image: mongo:4.4.6
ports:
- '${FORWARD_MONGO_DB_PORT:-27017}:27017'
environment:
MONGO_INITDB_ROOT_USERNAME: '${MONGO_DB_USERNAME}'
MONGO_INITDB_ROOT_PASSWORD: '${MONGO_DB_PASSWORD}'
MONGO_INITDB_DATABASE: '${MONGO_DB_DATABASE}'
volumes:
- 'sail-mongodb:/data/db'
networks:
- sail
在我的dockerfile与php8.2我安装mongodb扩展
RUN pecl install mongodb
我试着从laravel.testcontainer内部ping到mongodbcontainer,就像ping mongodb
一样,它返回成功,没有丢失数据。我还可以在我的mongodb容器中连接到mongo shell
1条答案
按热度按时间wr98u20j1#
问题是我使用了错误的端口21017而不是27017