2016-11-27 96 views
2

我試圖使用docker安裝一些需要的PHP擴展。Docker服務無法構建:返回非零代碼1

這裏是我的Dockerfile:

FROM php:7-fpm 

RUN apt-get update && apt-get install -y \ 
    libfreetype6-dev \ 
    libjpeg62-turbo-dev \ 
    libmcrypt-dev \ 
    libpng12-dev \ 
    libsqlite3-dev \ 
    libssl-dev \ 
    libcurl3-dev \ 
    libxml2-dev \ 
    libzzip-dev \ 
&& docker-php-ext-install iconv json mcrypt mbstring mysql mysqli pdo_mysql pdo_sqlite phar curl ftp hash session simplexml tokenizer xml xmlrpc zip \ 
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \ 
&& docker-php-ext-install gd 

WORKDIR /var/www 

CMD ["php7-fpm"] 

這裏是我得到的錯誤:

error: /usr/src/php/ext/mysql does not exist

usage: /usr/local/bin/docker-php-ext-install [-jN] ext-name [ext-name ...] ie: /usr/local/bin/docker-php-ext-install gd mysqli /usr/local/bin/docker-php-ext-install pdo pdo_mysql /usr/local/bin/docker-php-ext-install -j5 gd mbstring mysqli pdo pdo_mysql shmop

if custom ./configure arguments are necessary, see docker-php-ext-configure

Possible values for ext-name: bcmath bz2 calendar ctype curl dba dom enchant exif fileinfo filter ftp gd gettext gmp hash iconv imap interbase intl json ldap mbstring mcrypt mysqli oci8 odbc opcache pcntl pdo pdo_dblib pdo_firebird pdo_mysql pdo_oci pdo_odbc pdo_pgsql pdo_sqlite pgsql phar posix pspell readline recode reflection session shmop simplexml snmp soap sockets spl standard sysvmsg sysvsem sysvshm tidy tokenizer wddx xml xmlreader xmlrpc xmlwriter xsl zip

ERROR: Service 'php-localdev' failed to build: The command '/bin/sh -c apt-get update && apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12-dev libsqlite3-dev libssl-dev libcurl3-dev libxml2-dev libzzip-dev && /usr/local/bin/docker-php-ext-install iconv json mcrypt mbstring mysql mysqli pdo_mysql pdo_sqlite phar curl ftp hash session simplexml tokenizer xml xmlrpc zip && /usr/local/bin/docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ && /usr/local/bin/docker-php-ext-install gd'

returned a non-zero code: 1

你看到我Dockerfile任何問題,或者問題是在其他地方?

我受到php docker hub的Dockerfile啓發。

Thansk爲您提供幫助。

回答

2

在錯誤輸出中,它列出了ext_name的可能值。未列出mysql。有mysqlipdo_mysql,但不是mysql。您的命令確實包含mysql,並且錯誤的第一行似乎在抱怨這一點。試着把它拿出來看看是否有效。

+0

完美,我在我的Dockerfile中刪除了mysql,並且工作正常。謝謝 – Geetix