ディスクレスシステムでドッカーを実行するには?

ディスクレスシステムでドッカーを実行するには?

ディスクのないUbuntu 16.04でdockerを実行したいです。

PXEサーバーを設定し、ディスクレスUbuntu参照を実行できますここ。ただし、実行すると、docker run --rm hello-worldディスクがないシステムは次のメッセージを返します。

[1731.173432] overlayfs: filesystem on '/var/lib/docker/overlay2/0fdffd6d...76-init/diff' not supported as upperdir
docker: Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/870b3f2dd200854c747c16abae84e22bf42506cc0aba0fa183205165a83462d5-init/merged: invalid argument.
See 'docker run --help'.

このエラーを検出した結果、dockerは「overlay2」をファイルシステムとして使用し、「overlay2」は私が使用しているnfsファイルシステムをサポートしていないことに気づきました。

ディスクレスシステムでドッカーを使用するのに役立つ人はいますか?

ベストアンサー1

NFSはサポートされていません~のためDockerのグラフデータ

それDockerをRAMディスクで完全に実行できる必要があります。環境変数を設定DOCKER_RAMDISKし、Dockerデーモンにそれを使用させる場合dockerd -g /path/to/ramdisk

ブロックデバイスをPXEブートシステムにエクスポートする他の方法がある場合は、この方法を使用してデバイスを次のように使用します。direct-lvm別名で保存デバイスマッパーストレージドライバ。NBDiSCSI、おそらくセファロスポリン

私の考えでNFSが動作する唯一の方法は、Oracle Linuxが(?)DM-NFSカーネルドライバ利用できる通常、NFS 経由でループバック ファイルをマウントするよりも、devicemapper ループバック ファイルを高速化します。ループバックファイルはローカルディスクのDockerで正しく再生されないため、NFSの状況が悪いと予想されます。

おすすめ記事