2016-08-29 51 views
0

我上週在高山上運行php7,直到今天,我重建了我的圖像,現在沒有任何工作。我得到的錯誤:不能安裝高山包雖然我可以在用戶界面看到它

/ # apk add php7 
ERROR: unsatisfiable constraints: 
    php7 (missing): 
    required by: world[php7] 

爲每個包,擴展我試圖安裝和以前的工作。以下是我用來設置php7的RUN命令:

RUN echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ 
    apk update && \ 
    apk upgrade && \ 
    apk add --update \ 
     php7-mcrypt \ 
     php7-soap \ 
     php7-openssl \ 
     php7-gmp \ 
     php7-pdo_odbc \ 
     php7-json \ 
     php7-dom \ 
     php7-pdo \ 
     php7-zip \ 
     php7-mysqli \ 
     php7-sqlite3 \ 
     php7-pdo_pgsql \ 
     php7-bcmath \ 
     php7-gd \ 
     php7-odbc \ 
     php7-pdo_mysql \ 
     php7-pdo_sqlite \ 
     php7-gettext \ 
     php7-xmlreader \ 
     php7-xmlrpc \ 
     php7-bz2 \ 
     php7-iconv \ 
     php7-pdo_dblib \ 
     php7-curl \ 
     php7-ctype \ 
     php7-fpm 

上述所有擴展程序上週安裝完美無瑕。我錯過了什麼?

證明確實存在的包:https://pkgs.alpinelinux.org/packages?name=php7-*&branch=&repo=&arch=&maintainer=

回答

2

您應該使用上DockerHub官方PHP 7 Alpine image

然後,每個圖像文件,在你Dockerfile使用docker-php-ext-install命令:

FROM php:7-fpm-alpine 
RUN apk update \ 
    && apk add libmcrypt-dev \ 
    && docker-php-ext-install mcrypt mysqli pdo_mysql \ 
    && rm /var/cache/apk/* 

這可能最初看起來有些奇怪,但它的工作原理,是正式支持的泊塢窗的方法。

我們所提供的輔助腳本泊塢窗-PHP-EXT-配置, 搬運工-PHP-EXT安裝和搬運工-PHP-EXT-能夠更容易地安裝 PHP擴展。

DockerHub - PHP

+1

從Alpine開始:3.3您現在可以跳過udpate和清理。你做'apk - 無緩存添加...'。它更高效。 https://github.com/gliderlabs/docker-alpine/blob/master/docs/usage.md#disabling-cache – Alkaline

+0

謝謝@Alkaline DevOpsDan。這看起來很奇怪,但真正讓我感到驚訝的是,這週五的工作非常順利,昨天徹底爆發了。 – Jonathan

3

包PHP7已經從測試到社區倉庫感動,讓你有http://dl-cdn.alpinelinux.org/alpine/edge/community更換http://dl-cdn.alpinelinux.org/alpine/edge/testing

+0

謝謝!我有一種感覺,他們已經搬到了某個地方,但是我沒有找到他們在我退房的任何回購站點。如果有這樣的變化,有什麼方法可以通知嗎?這讓我在開發時間稍微回退一點。 – Jonathan

+0

這適用於我。謝謝 –

相關問題