Docker部署Laravel容器执行composer install时线程池等待停滞问题
解决Docker Laravel容器内
composer install卡住的问题 那个E1204日志来自gRPC的线程池模块,意思是gRPC在准备fork进程时,一直在等待线程池空闲,但始终无法达成,最终导致进程卡死。和你猜测的Mac本地进程占用关系不大,核心问题出在容器内gRPC的fork机制冲突或资源不足。
试试这几个解决办法:
- 临时禁用gRPC的fork支持:在容器内先执行
export GRPC_ENABLE_FORK_SUPPORT=0,再运行composer install。这个环境变量会让gRPC跳过等待线程池的步骤,直接执行fork操作。 - 关闭composer并行安装:执行
composer install --no-parallel,用串行方式安装依赖,降低线程池的负载压力。 - 调整Docker资源分配:打开Docker Desktop的设置,找到「Resources」选项,给容器多分配些CPU和内存(比如4核CPU、8G内存),避免容器内资源不足导致线程池一直无法空闲。
- 更新composer版本:先在容器内运行
composer self-update将composer升级到最新版,旧版本可能存在和gRPC的兼容性问题。
内容的提问来源于stack exchange,提问作者kenzo
相关产品推荐
相关产品推荐

