Docker イメージをビルドすると、Vagrant が管理する VBox VM がフリーズします。

Docker イメージをビルドすると、Vagrant が管理する VBox VM がフリーズします。

皆さん

Docker イメージを使用して Web アプリケーションの開発を検討しているところ、次の問題が見つかりました。

(以下のすべてのコマンドは、Vagrantが管理するVBox仮想マシン内で実行されます。)

  1. カスタム項目を作成してDockerfile配置します$HOME/my_app

    FROM ubuntu:14.04  
    RUN apt-get -q update && apt-get install -y \  
        python-dev \  
        python-setuptools \  
        && apt-get clean \  
        && rm -rf /var/lib/apt/lists/*  
    RUN easy_install pip  
    RUN pip install virtualenv  
    
  2. 上記のビルドイメージを使用してくださいDockerfile

    sudo docker build -t kamils/my_app:0.1 $HOME/my_app
    

最初のRUNレイヤーが完了するまで、ビルドプロセスは計画どおりに進みます。その後、仮想マシンは応答を停止します。担当のVBoxプロセスがホストCPUの制御を超えました(htopが200%使用量を示しました:P)。

何が起こっているのか、私が間違っているのかというアイデアはありますか?

編集する

(要求時)free -m出力:

             total       used       free     shared    buffers     cached
Mem:          7890       7410        480        612         30        963
-/+ buffers/cache:       6416       1473    
Swap:         7627       1450       6177

また、ホストシステムがUbuntu 14.04で実行されている間、ゲストVM自体はArch Linuxで動作することにも注意する必要があります。

答え1

もう少し掘り下げられ、答えはとても簡単になりました。

私が実行しているArch Linux Vagrantボックスは、 "aufs"モジュールが組み込まれていないカーネルを使用します。 Dockerはaufなしでコンテナを実行できますが、その上に追加のレイヤーを設定するとシステムクラッシュが発生する可能性があります。

残念ながら、Docker は aufs がシステムに存在しないことをユーザーに警告しません。

とにかく..解決されました。

関連情報