1. 程式人生 > 其它 >alpine的docker環境中php安裝amqp擴充套件

alpine的docker環境中php安裝amqp擴充套件

技術標籤:dockerphpalpine安裝amqp擴充套件為php安裝amqp擴充套件安裝amqp擴充套件報錯

我使用的是ric_harvey/nginx-php-fpm的映象。因為用的是alpine,命令和包名稱和centos等系統的都不太一樣。遇到了很多坑,但是我當時沒有記錄下來,出錯以後檢視相應的錯誤提示,也能知道是少了哪些包。

這裡做一下使用的命令記錄。

安裝 autoconf(無configure指令碼時):

apk add --no-cache -U autoconf

安裝 C 編譯器:

apk add --no-cache -U gcc
apk add --no-cache -U libc-dev

安裝make

apk add --no-cache -U make

librabbitmq-c和librabbitmq-c-dev

apk add --no-cache rabbitmq-c

apk add --no-cache rabbitmq-c-dev

注意: 不要再提示輸入的時候輸入任何東西,否則會提示找不到rabbitmq-c或rabbitmq-c-dev

總的:

apk add --no-cache -U autoconf \
&& apk add --no-cache -U gcc \
&& apk add --no-cache -U make \
&& apk add --no-cache -U libc-dev \
&& apk add --no-cache -U rabbitmq-c \
&& apk add --no-cache -U rabbitmq-c-dev \
&& pecl install amqp \
&& apk del autoconf \
&& apk del autoconf make\
&& apk del autoconf gcc

安裝完,提示拷貝.so檔案到相應資料夾:

Build process completed successfully
Installing '/usr/local/lib/php/extensions/no-debug-non-zts-20170718/amqp.so'
install ok: channel://pecl.php.net/amqp-1.10.2
configuration option "php_ini" is not set to php.ini location
You should add "extension=amqp.so" to php.ini

php.ini中增加的

[AMQP]
extension=amqp.so

使用php -m檢視是否有此擴充套件

映象大小

最後的三個命令其實就是移除不必要的包,縮小映象大小。如果不移除,映象增加100m,移除之後,映象大概增加了13m左右,到此成功。