php - 在 docker 容器中为 php 启用soap
问题描述
我一直无法让肥皂与我的 php Docker 设置一起使用。
我正在为 Windows 版本 18.03.1-ce-win65 (17513) 使用 Docker CE。PHP 版本 7.2.3
我尝试从容器内部运行apt-get install php-soap
,结果是
读取包列表...完成
构建依赖关系树
读取状态信息...完成
*
包 php-soap 是由以下提供的虚拟包:
* php7.0-soap 7.0.27 -0+deb9u1 [不是候选版本]*
E: 包 'php-soap' 没有安装候选
运行docker-php-ext-install soap
结果报错configure: error: libxml2 not found。请检查您的 libxml2 安装。
但是,当查看 php 信息时,我看到以下内容: libxml2 Version => 2.9.4
解决方案
您需要将 libxml2-dev 安装为 dockerfile 的一部分,图像保持在最低限度,并且不包括每个模块所需的所有位。虽然图像可能有主包,但 -dev 包包含编译依赖它的其他模块所需的组件......
RUN apt-get update && \
apt-get install -y libxml2-dev
(来自https://github.com/docker-library/php/issues/315)
只是为了说清楚-命令
RUN docker-php-ext-install soap
然后将成功运行以安装soap库。
推荐阅读
- multithreading - Python线程一次不运行2个进程
- react-native - 如何在 react-native-signature-capture 中获取保存的签名图像
- shell - Shell:如果..elif 条件无法按要求创建文件
- image - 如何将类型“UnityEngine.Texture2D”转换为“UnityEngine.Sprite”?
- javascript - JS:传递的 JSON-Array 丢失引号
- javascript - JS:在for循环中调用异步函数不引用相同的迭代变量
- android - 使用喷气背包导航在操作栏中显示返回箭头
- linux - 端口扫描仪显示模块错误,这与什么有关?
- javascript - 如何将对象键分配给同一属性并创建具有名称和值对的对象数组-Javascript
- python - 获得所需输出的替代方法?