LXC Bind Mounts: Difference between revisions
(added hint to pct set command) |
Kotakomputer (talk | contribs) |
||
Line 9: | Line 9: | ||
Suppose you want to access the following directories in your LXC container with ID100: | Suppose you want to access the following directories in your LXC container with ID100: | ||
* /target which is a local directory | * /host-target which is a local directory | ||
* /mnt/pve/freenas which is a NFS mounted directory | * /mnt/pve/freenas which is a NFS mounted directory | ||
Then you need to add the following parameters to /etc/pve/lxc/100.conf | Then you need to add the following parameters to /etc/pve/lxc/100.conf | ||
<pre> | <pre> | ||
mp0: /target/test,mp=/target | mp0: /host-target/test,mp=/guest-target | ||
mp1: /mnt/pve/freenas,mp=/mnt/pve/freenas | mp1: /mnt/pve/freenas,mp=/mnt/pve/freenas | ||
</pre> | </pre> | ||
Line 20: | Line 20: | ||
alternatively you can set it with pct (see [[Manual: pct]]) | alternatively you can set it with pct (see [[Manual: pct]]) | ||
<pre> | <pre> | ||
pct set 100 -mp0 mp=/target,/target | pct set 100 -mp0 mp=/host-target,/guest-target | ||
pct set 100 -mp1 mp=/mnt/pve/freenas,/mnt/pve/freenas | pct set 100 -mp1 mp=/mnt/pve/freenas,/mnt/pve/freenas | ||
</pre> | </pre> |
Revision as of 23:27, 16 September 2016
Introduction
Bind mounts allow you to access a directory, or a storage volume from your Proxmox VE host inside a container. There can be many purposes:
- Accessing your home directory in the guest
- Accessing a USB device directory in the guest
- Accessing a NFS mount from in the host in the guest
Note that the device you want to use has to be already accessible in the pve host. For security reasons, it is not possible to mount a device of NFS share directly in the guest.
Suppose you want to access the following directories in your LXC container with ID100:
- /host-target which is a local directory
- /mnt/pve/freenas which is a NFS mounted directory
Then you need to add the following parameters to /etc/pve/lxc/100.conf
mp0: /host-target/test,mp=/guest-target mp1: /mnt/pve/freenas,mp=/mnt/pve/freenas
alternatively you can set it with pct (see Manual: pct)
pct set 100 -mp0 mp=/host-target,/guest-target pct set 100 -mp1 mp=/mnt/pve/freenas,/mnt/pve/freenas
reboot your container and log in:
pct enter mount | egrep '(target|freenas)' /dev/dm-0 on /target type ext4 (rw,relatime,errors=remount-ro,data=ordered) freenas.local:/mnt/TranstecThrough/exported
Manual method
- This works as of 2015-09-13 using lxc-pve: 1.1.3-1 .
- add this to the .conf file in /etc/pve/lxc
lxc.mount.entry: /host/folder container/folder none bind,create=dir,optional 0 0
Note: Do not put a '/' before the container target
Note: This adds an entry to "/var/lib/lxc/<containerID>/config" in the correct format. Do not edit "/var/lib/lxc/<containerID>/config" manually as that is overwritten on container boot.
Bind mounts and backup
Note that bind mounts are not going to be included when you backup the container by default. You need to set the backup flag to include them.
mp0: /target/test,mp=/target,backup=1