このDockerfileを使用してください。
FROM php:5.4-fpm
RUN apt-get -qqy update \
&& apt-get -qqy install git \
libcurl4-gnutls-dev \
libmcrypt-dev \
libpng12-dev \
libxml2-dev \
libxslt-dev \
&& docker-php-ext-install curl \
bcmath \
gd \
mcrypt \
mysql \
soap \
xsl \
zip \
&& rm -rf /var/lib/apt/lists
エラーが発生しました。
rm: cannot remove '/var/lib/apt/lists': Directory not empty
rm
しかし、別のドアに分けると、RUN
エラーが突然消えます。
FROM php:5.4-fpm
RUN apt-get -qqy update \
&& apt-get -qqy install git \
libcurl4-gnutls-dev \
libmcrypt-dev \
libpng12-dev \
libxml2-dev \
libxslt-dev \
&& docker-php-ext-install curl \
bcmath \
gd \
mcrypt \
mysql \
soap \
xsl \
zip
RUN rm -rf /var/lib/apt/lists
rm
それはコンテナ/bin/rm
です。php:5.4-fpm
最初のケースでは、なぜdocker build
削除できず、/var/lib/apt/lists
フラグがあってもゼロ以外の終了状態で終了するのはなぜですか-f
?
答え1
Docker開発ディスカッションによると、これはDockerドキュメントで最もよく知られている問題です。これは現在のリリースノート参照です。
コンテナの予期しないファイル権限 AUFS の機能により、権限が上位層と下位層の間で期待どおりに伝播するのを防ぎます。これにより、秘密鍵、データベースインスタンスなどにアクセスできない場合があります。完全な情報と回避策については、Github問題783を参照してください。
上記の回避策を見つけることができます。ここGithubから