Dockerビルドからディレクトリを(強制)削除することはできません。

Dockerビルドからディレクトリを(強制)削除することはできません。

この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から

おすすめ記事