Ich versuche, einen Ordner auf dem Host in einem LXC-Container bereitzustellen.
Der Host hat einen Ordner /mnt/ssd/solr_data
erstellt (dieser befindet sich derzeit im Root-Dateisystem, aber später werde ich dort ein SSD-Laufwerk einbinden, also bereite ich mich darauf vor).
Ich möchte, dass dieser Ordner wie /data
im Container eingehängt wird.
Also in der Container-Fstab-Datei habe ich Folgendes:
/mnt/ssd/solr_data /var/lib/lxc/Solr4StandAlone/rootfs/data ext4 defaults,noatime 0 0
Aber das ist ein No-Go, ich bekomme diesen Fehler beim Starten des Containers:
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'
mount
gilt dies? Ich konntemount(8)
zum Beispiel die in Ubuntu 14.04 beschriebene Option nicht finden .mount(8)
In
/var/lib/lxc/Solr4StandAlone/config
eine Zeile gelesen:lxc-stop
Stoppen Sie dann Ihren Behälter undlxc-start
Ihren Behälter wieder.Das ist alles was benötigt wird.
ref: Referenzlink
quelle
Ich musste den
/data
Ordner im lokalen Container erstellen, bevor der Mount ordnungsgemäß funktionieren würde.Ich habe auch diesen fstab-Eintrag benutzt:
quelle
bind
Die Mount-Option fehlte im OP. Ich glaube, es ist die wichtigste Korrektur (auch in allen anderen Arbeitsantworten vorhanden).Ab dem 30.09.2015 bricht eine Änderung aufgrund eines Sicherheitspatches das Mounten auf einen absoluten Pfad mit lxc.mount.entry in der Konfigurationsdatei ab.
Stattdessen können Sie einen relativen Pfad verwenden
Siehe: https://wiki.debian.org/LXC#Bind_mounts_inside_the_container
quelle
Da sich LXC im Laufe der Zeit geändert hat, kann dies sehr einfach sein, aber es hat mich ein wenig verblüfft und ich wollte dazu beitragen. Ich habe auch eine Liste dafür erstellt, damit ich mich an mich selbst erinnern kann, aber die einfache Verwendung von lxc config device reicht aus.
Hinweis: Es ist wichtig, den vorderen Schrägstrich aus dem Pfadargument aufgrund einer von @biscuitNinja erwähnten Änderung zu lassen
Mounten von Verzeichnissen vom Container zum Host
quelle
Wenn Sie
libvirt
Ihrenlxc
Container mit erstellen , können Sie das Verzeichnis auf dem Hostpassthrough
wie folgt festlegen:quelle