Docker化Laravel微服务连接MongoDB时遇500内部服务器错误
Laravel Docker容器化应用MongoDB事务报错:
There is no active session 我正在开发一个采用Docker容器化的Laravel微服务应用,大部分端点在容器内外均可正常运行。但当应用连接MongoDB(尤其是执行事务查询)时,持续报错:There is no active session.,该错误源自MongoDB\Driver\Exception。
目前已确认以下内容:
- MongoDB副本集配置正确
- 非Docker环境下,应用与MongoDB的连接及运行完全正常
- 所有服务和依赖均已运行,网络配置看似正常,同一容器内的其他端点无任何问题
以下是供参考的Dockerfile片段:
FROM php:8.0-alpine AS php WORKDIR /app RUN apk add --no-cache \ autoconf \ build-base \ libpng-dev \ oniguruma-dev \ libxml2-dev \ imagemagick-dev \ libzip-dev \ git \ curl \ unzip \ openssl \ zip \ freetype-dev \ jpeg-dev \ libwebp-dev \ && pecl install imagick \ && docker-php-ext-enable imagick \ && pecl install mongodb \ && docker-php-ext-enable mongodb \ && docker-php-ext-configure gd --with-freetype --with-webp --with-jpeg \ && docker-php-ext-install pdo_mysql opcache gd zip \ && pecl install swoole-4.8.4 \ && docker-php-ext-enable swoole # Stage - Production Image FROM php:8.0-alpine # Install runtime system dependencies for PHP extensions RUN apk add --no-cache \ libpng \ imagemagick-libs \ libzip\ libgomp \ freetype \ jpeg \ libwebp \ libstdc++ COPY --from=php /usr/local/etc/php/conf.d/ /usr/local/etc/php/conf.d/ COPY --from=php /usr/local/lib/php/extensions/ /usr/local/lib/php/extensions/ COPY --from=php /usr/lib/ /usr/lib/ COPY . /var/www WORKDIR /var/www CMD ["php", "artisan", "octane:start","--port=8000", "--host=0.0.0.0"]
Docker中的错误日志如下:
500 POST /master/login ................................. 23.35 mb 30.81 ms
请问有人遇到过类似问题吗?能否指点我可能遗漏或出错的地方?非常感谢!
更新
问题出在MongoDB上,现在一切正常。
内容的提问来源于stack exchange,提问作者Virendra
相关产品推荐
相关产品推荐

