2016-04-10 32 views
2

Ben bir fpm-alpine konteyner üzerinde laravel kurmak arıyorum. ... Dockerfile aşağıda bazı hataları üreten bir pürüzle Koşu üretilenHATA: karşılanamayan kısıtlamalar - php: 7-fpm-alp içinde

FROM php:7-fpm-alpine 

# install extensions needed for Laravel 
RUN apk --update add \ 
    php7-mysqli \ 
    php7-mcrypt \ 
    php7-mbstring \ 
    rm /var/cache/apk/* 

Hatalar şunlardır:

Building fpm 
Step 1 : FROM php:7-fpm-alpine 
---> 9e6811cb8bac 
Step 2 : RUN apk --update add php7-mysqli php7-mcrypt php7-mbstring rm /var/cache/apk/* 
---> Running in 87364957eb57 
fetch http://dl-cdn.alpinelinux.org/alpine/v3.3/main/x86_64/APKINDEX.tar.gz 
fetch http://dl-cdn.alpinelinux.org/alpine/v3.3/community/x86_64/APKINDEX.tar.gz 
ERROR: unsatisfiable constraints: 
    /var/cache/apk/* (missing): 
    required by: world[/var/cache/apk/*] 
    php7-mbstring (missing): 
    required by: world[php7-mbstring] 
    php7-mcrypt (missing): 
    required by: world[php7-mcrypt] 
    php7-mysqli (missing): 
    required by: world[php7-mysqli] 
    rm (missing): 
    required by: world[rm] 
ERROR: Service 'fpm' failed to build: The command '/bin/sh -c apk --update add php7-mysqli php7-mcrypt php7-mbstring rm /var/cache/apk/*' returned a non-zero code: 5 

Bunları paket adları ve find them on the alpine linux web site arayabilirsiniz. Bu konuda nasıl çalışabileceğime dair bir fikrin var mı?

Building fpm 
Step 1 : FROM php:7-fpm-alpine 
---> 9e6811cb8bac 
Step 2 : RUN apk update 
---> Using cache 
---> 9ef09f3aa2a2 
Step 3 : RUN ls /var/cache/apk 
---> Running in e126a083a306 
APKINDEX.5a59b88b.tar.gz 
APKINDEX.7c1f02d6.tar.gz 

Ne yapabilirim üzerinde herhangi bir fikir bu sorunu çözmek için: apt önbelleği güncelleme ... ama bir LS orada içeriğini görebilirsiniz ekleyerek değil gibi sanki? Ben kapsayıcı içindeki çalışma eklerken gereklidir docker-php-ext-install kullanmıyordum

cevap

3

...

FROM php:7-fpm-alpine 

# install extensions needed for Laravel 
RUN apk update \ 
    && apk add libmcrypt-dev \ 
    && docker-php-ext-install mcrypt mysqli pdo_mysql \ 
    && rm /var/cache/apk/* 
+0

bu aslında çalışma var mı? Bu uzantılardan bazılarının geliştirme paketlerine (libmcrypt-dev gibi) ihtiyaç duyabileceği gibi görünüyor. –

+0

Evet, gerçekten – Webnet

3

Taban Docker Resim muhtemelen yanlış bir depo başvurur. Böyle apk add komutuna doğru depoları üzerinde

Geçiş:

RUN apk add --update 
--repository http://dl-cdn.alpinelinux.org/alpine/edge/main \ 
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \ 
php7-mysqli php7-mcrypt php7-mbstring 
+0

@Webnet var, sanırım bu doğru cevap! – zioMitch