我正在使用官方php docker image:7.1-apache
我正在尝试通过docker console安装composer并按照此处提供的步骤进行操作:https://getcomposer.org/download/
当我进入第三步时:php composer-setup.php
我得到:Segmentation fault
我只是不知道该怎么做。当我使用较低版本的php时,我没有安装composer的问题。
这是我的dockerfile:
FROM php:7.1-apache
RUN apt-get update && apt-get install -y git
# Install Xdebug
RUN curl -fsSL 'https://xdebug.org/files/xdebug-2.4.0.tgz' -o xdebug.tar.gz \
&& mkdir -p xdebug \
&& tar -xf xdebug.tar.gz -C xdebug --strip-components=1 \
&& rm xdebug.tar.gz \
&& ( \
cd xdebug \
&& phpize \
&& ./configure --enable-xdebug \
&& make -j$(nproc) \
&& make install \
) \
&& rm -r xdebug \
&& docker-php-ext-enable xdebug
# Add xdebug cfg
RUN echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN echo "xdebug.remote_autostart=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN echo "xdebug.remote_connect_back=1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN echo "xdebug.remote_port=9001" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN echo "xdebug.remote_host=172.17.0.1" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN echo "xdebug.remote_log=php7-xdebug.log" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
# Install Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer
# Install mcrypt
RUN apt-get install -y libmcrypt-dev
RUN docker-php-ext-install mcrypt
# Enable mod_rewrite and ssl
RUN a2enmod rewrite
RUN a2enmod ssl
# Restart apache2 to affect changes
RUN service apache2 restart
最初这与php 7.0版完美配合。然而,7.1对此并不满意。