我的 dockerfile 有一些問題...這是問題所在,我有一個基于此圖像的 dockerfile -> FROM php:7.1.7-apache我想為 php 安裝 amqp 擴展。我正在使用 pecl,但最近在構建容器時出現錯誤。這是我在 dockerfile 中使用的過程FROM php:7.1.7-apacheMAINTAINER T3ddy <[email protected]>RUN apt-get update## TOOLSRUN apt-get install -y \ build-essential \ curl \ git \ htop \ ncdu \ netcat \ net-tools \ telnet \ unzip \ vim \ wget## PHP AMQPRUN apt-get install -y librabbitmq-dev libssl-devRUN pecl install amqpRUN docker-php-ext-enable amqp當我到了 pecl install amqp ........../tmp/pear/temp/amqp/amqp.c: In function 'zm_startup_amqp':/tmp/pear/temp/amqp/amqp.c:177:55: error: 'AMQP_SASL_METHOD_EXTERNAL' undeclared (first use in this function) REGISTER_LONG_CONSTANT("AMQP_SASL_METHOD_EXTERNAL", AMQP_SASL_METHOD_EXTERNAL, CONST_CS | CONST_PERSISTENT); ^/usr/local/include/php/Zend/zend_constants.h:42:105: note: in definition of macro 'REGISTER_LONG_CONSTANT' #define REGISTER_LONG_CONSTANT(name, lval, flags) zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number) ^/tmp/pear/temp/amqp/amqp.c:177:55: note: each undeclared identifier is reported only once for each function it appears in REGISTER_LONG_CONSTANT("AMQP_SASL_METHOD_EXTERNAL", AMQP_SASL_METHOD_EXTERNAL, CONST_CS | CONST_PERSISTENT); ^這是我得到的錯,我真的不明白為什么它失敗了,因為現在它運行良好......任何人都有任何想法。或者關于如何在不使用 pecl 的情況下安裝 amqp 的解決方案?
2 回答

12345678_0001
TA貢獻1802條經驗 獲得超5個贊
我發布了一個腳本,讓您只需以下幾行即可安裝 amqp PHP 擴展(以及許多其他擴展):
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN chmod +x /usr/local/bin/install-php-extensions && sync && \
install-php-extensions amqp
這些腳本負責 PHP 版本,并安裝所有必需的 APT(對于 Debian)或 APK(對于 Alpine)包。
更多細節在這里:https ://github.com/mlocati/docker-php-extension-installer
- 2 回答
- 0 關注
- 233 瀏覽
添加回答
舉報
0/150
提交
取消