1

昨天我的 ubuntu 更新了(来自日志)Grpc for PHP

命令行:aptdaemon role='role-commit-packages' sender=':1.567' 升级:libprotoc-dev:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), libprotoc15:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), gnome-software-plugin-snap:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), gnome -软件:amd64(3.26.1-0ubuntu2、3.26.1-0ubuntu2.17.10.1)、google-chrome-stable:amd64(62.0.3202.94-1、63.0.3239.84-1)、protobuf-compiler:amd64(3.5 .0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), ubuntu-software:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), libprotobuf-lite15:amd64 (3.5 .0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), gnome-software-plugin-flatpak:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), libprotobuf15:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), libprotobuf-dev:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), gnome-software-common:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1)

当重新启动时,我无法发出任何 Grpc 请求,我的 php.ini 文件中有 extension=grpc.so 并且昨天相同的代码工作,我也尝试在我的作曲家文件中更新它,也尝试重新安装 Grpc从我的原型文件重新创建类。由于某种原因,它不再起作用了。

我总是得到同样的回应

消息:“找不到类 'Grpc\ChannelCredentials'”

任何想法如何解决它(或出了什么问题)?

编辑:我将 docker 用于本地服务器 - 现在有可能 2 个不同的版本发生冲突吗?

4

2 回答 2

1

这真的很奇怪,因为根据您的日志,只有 protobuf 从 3.5.0 升级到 3.5.0.1 和 gnome-software 升级。看来他们不会破坏grpc。我安装了这些软件包,然后通过“sudo pecl install grpc(protobuf)”安装了 grpc-1.7.0 和 protobuf-3.5.0.1,但它们运行良好。

错误“找不到类 'Grpc\ChannelCredentials'”很可能意味着 grpc.so 扩展未正确加载。我们应该定位问题出在哪里。你可以尝试

于 2017-12-13T19:40:52.960 回答
0

以防万一有人遇到类似问题我的问题的解决方案是在 docker 内部。无论出于何种原因,我的 grpc 安装丢失了

我通过连接到 docker bash 并再次安装 grpc 来修复它

pecl 安装 grpc

并在我的 php.ini 文件中读取 extensions=grpc.so

编辑:每次我在 docker-compose.yaml 中更改 antyhing 时都会发生同样的问题

于 2017-12-14T15:00:44.197 回答