2017-11-08 6 views
2

私はphalcon3とphp7を持ったDocker Containerを持っています。私は運がなくてもPHP拡張子Mcryptをインストールしようとしています。Dockerにmcryptをインストールするには

私はコンテナにSSHを行い、そして実行する場合:

apt-get update 
apt-get install php7.0-mcrypt 

を、私は次を得る:

E: Unable to locate package php7.0-mcrypt 
E: Couldn't find any package by regex 'php7.0-mcrypt' 

は、それがインストールさ取得する方法はありますか?

+0

あなたは常に 'apt-get update'で始めるべきですので、' apt-get update && apt-get install -y php7.0-mcrypt'の行に沿って何かを試してください。到着以来多くのアップデートを受けているOS(ubuntu、Debianなど)を使用してください。ところで、 'sudo'は必要ありません。あなたが' USER myuser'を実行しない限りrootになります – user2915097

+0

https://hub.docker.com/r/phpdocker/phpdocker/~/dockerfile/(そしてその行 – user2915097

+0

@ user2915097申し訳ありません、私はapt-get updateをしています。あなたは正しいと思いますが、sudoはそれについて不平を言うのは事実ではありません。コマンドを更新しました。 また、2番目のコメントでお勧めするように、新しいコンテナを作成するのではなく、既存のコンテナを修正するためにIm Trayingを使用します。 – subharb

答えて

2

php docker imageセクションPHPのコアの拡張例えば

公式マニュアルを見てみましょう、あなたはiconvの、mcryptの とGDの拡張子を持つPHP-FPMイメージを持っているしたい場合は、基本を継承することができますあなたが好きな画像、および 次のように独自のDockerfileを書く:

FROM php:7.0-fpm 
RUN apt-get update && apt-get install -y \ 
     libfreetype6-dev \ 
     libjpeg62-turbo-dev \ 
     libmcrypt-dev \ 
     libpng-dev \ 
    && docker-php-ext-install -j$(nproc) iconv mcrypt \ 
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \ 
    && docker-php-ext-install -j$(nproc) gd 

Rember、拡張機能の依存関係を手動でインストールする必要があります。 拡張機能でカスタム構成引数が必要な場合は、この例のように docker-php-ext-configureスクリプトを使用できます。この場合は、 configureスクリプトとinstallスクリプトによって処理されるため、 docker-php-sourceを手動で実行する必要はありません。

+0

ありがとうございました。 また、容器上にSSHと同じコマンドを実行することができます。 apt-getの更新を&& \ のlibfreetype6-devの\ libjpeg62のターボ-devの\ libmcryptを-devの\ のlibpng-devの\ -yインストールapt-getを&& docker-php-ext-install -j $(nproc)iconv mcrypt \ && docker-php-ext-configure gd --with-freetype-dir =/usr/include/--with-jpeg-dir =/usr/include/\ && docker-php-ext-install -j $(nproc)gd – subharb

関連する問題