LXC:ホストからコンテナにフォルダをマウントする方法は?

LXC:ホストからコンテナにフォルダをマウントする方法は?

ホストシステムのフォルダをLXCコンテナにマウントしようとしています。

ホストは/mnt/ssd/solr_dataフォルダを作成します(現在はルートファイルシステムにありますが、後でそこにSSDドライブをマウントする予定ですので準備中です)。

/dataフォルダがコンテナ内にあるかのようにマウントされるようにしたいです。

したがって、コンテナfstabファイルには次のものがあります。

/mnt/ssd/solr_data      /var/lib/lxc/Solr4StandAlone/rootfs/data        ext4    defaults,noatime        0       0

ただし、この方法は機能しません。コンテナを起動すると、次のエラーが発生します。

lxc-start: No such file or directory - failed to mount '/mnt/ssd/solr_data' on '/usr/lib/x86_64-linux-gnu/lxc//data'
lxc-start: failed to setup the mounts for 'Solr4StandAlone'
lxc-start: failed to setup the container
lxc-start: invalid sequence number 1. expected 2
lxc-start: failed to spawn 'Solr4StandAlone'

ベストアンサー1

コンテナにディレクトリを自動的に作成するには、create=dirfstabにオプションを追加することもできます。

/mnt/ssd/solr_data      /var/lib/lxc/Solr4StandAlone/rootfs/data        none   bind,create=dir

編集:これはLXC専用です。バラよりこのスレッド

すでに「オプション」があるように、ここには2つの新しいLXC関連のインストールフラグが追加されます。

  • create=dir (mkdir_p はそのパスで実行されます)

  • create=file (ディレクトリ名で mkdir_p を実行 + パスで fopen を実行)

これは、権限のないコンテナに必要ないくつかのバインドマウントによって駆動されます。

おすすめ記事