I use proxmox 6.4-9. I installed unprivileged LXC where I run nextcloud. Everything seems to be working great.
lxc. config
arch: amd64
cores: 2
hostname: web-debian-test
memory: 2048
net0: name=eth0,bridge=vmbr1,gw=192.168.1.1,hwaddr=26:40:D5:E4:61:86,ip=192.168.1.108/24,type=veth
ostype: debian
rootfs: local-zfs:subvol-108-disk-0,size=16G
swap: 2048
unprivileged: 1
On the SSD, I created a zpool called a datapool. In zpool, I created a 200 GB nextcloud dataset
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
datapool 3.14M 899G 96K /datapool
datapool/nextcloud 104K 200G 104K /datapool/nextcloud
rpool 35.3G 193G 96K /rpool
rpool/ROOT 24.7G 193G 96K /rpool/ROOT
...
Before mount, I check the owners and groups inside the LXC
$ ls -la /var/www
total 26
drwxr-xr-x 4 root root 4 Jun 7 15:51 .
drwxr-xr-x 12 root root 14 Jun 7 14:26 ..
drwxr-xr-x 4 root root 5 Jun 7 15:23 html
drwxrwx--- 4 www-data www-data 8 Jun 7 15:55 nextcloud-data
$ ls -la /var/www/html
total 35
drwxr-xr-x 4 root root 5 Jun 7 15:23 .
drwxr-xr-x 4 root root 4 Jun 7 15:51 ..
-rw-r--r-- 1 root root 10701 Jun 7 14:26 index.html
drwxr-xr-x 13 www-data www-data 31 Jun 7 15:02 phpmyadmin
drwxr-xr-x 14 www-data www-data 28 Jul 3 01:17 www.nextcloud.ddns.info
sudo ls -la /var/www/nextcloud-data
total 28
drwxrwx--- 4 www-data www-data 8 Jun 7 15:55 .
drwxr-xr-x 4 root root 4 Jun 7 15:51 ..
-rw-r--r-- 1 www-data www-data 542 Jun 7 15:54 .htaccess
-rw-r--r-- 1 www-data www-data 0 Jun 7 15:54 .ocdata
drwxr-xr-x 10 www-data www-data 10 Jul 2 15:21 appdata_oc65vcb3bp4d
-rw-r--r-- 1 www-data www-data 0 Jun 7 15:54 index.html
drwxr-xr-x 4 www-data www-data 4 Jun 7 19:27 nextcloud
-rw-r----- 1 www-data www-data 391 Jun 7 17:30 nextcloud.log
On host proxmox
ls -la /rpool/data/subvol-108-disk-1/var/www/html
total 35
drwxr-xr-x 4 100000 100000 5 Jun 7 15:23 .
drwxr-xr-x 4 100000 100000 4 Jun 7 15:51 ..
-rw-r--r-- 1 100000 100000 10701 Jun 7 14:26 index.html
drwxr-xr-x 13 100033 100033 31 Jun 7 15:02 phpmyadmin
drwxr-xr-x 14 100033 100033 28 Jul 3 01:17 www.nextcloud.ddns.info
The contents of the directory intended for the data
ls -la /rpool/data/subvol-108-disk-1/var/www/nextcloud-data
total 28
drwxrwx--- 4 100033 100033 8 Jun 7 15:55 .
drwxr-xr-x 4 100000 100000 4 Jun 7 15:51 ..
drwxr-xr-x 10 100033 100033 10 Jul 2 15:21 appdata_oc65vcb3bp4d
-rw-r--r-- 1 100033 100033 542 Jun 7 15:54 .htaccess
-rw-r--r-- 1 100033 100033 0 Jun 7 15:54 index.html
drwxr-xr-x 4 100033 100033 4 Jun 7 19:27 nextcloud
-rw-r----- 1 100033 100033 391 Jun 7 17:30 nextcloud.log
-rw-r--r-- 1 100033 100033 0 Jun 7 15:54 .ocdata
Now i will perform mount point and UID / GID mapping
nano /etc/pve/lxc/108.conf
arch: amd64
cores: 2
hostname: web-debian-test
memory: 2048
mp0: /datapool/nextcloud,mp=/var/www/nextcloud-data
net0: name=eth0,bridge=vmbr1,gw=192.168.1.1,hwaddr=26:40:D5:E4:61:86,ip=192.168.1.108/24,type=veth
ostype: debian
rootfs: local-zfs:subvol-108-disk-0,size=16G
swap: 2048
unprivileged: 1
lxc.idmap: u 0 100000 33
lxc.idmap: g 0 100000 33
lxc.idmap: u 33 33 1
lxc.idmap: g 33 33 1
lxc.idmap: u 34 100034 65502
lxc.idmap: g 34 100034 65502
nano /etc/subuid
root:100000:65536
root:33:1
nano /etc/subgid
root:100000:65536
root:33:1
rebooting lxc
I will now check the rights and owners in LXC.
Inside LXC
$ ls -la /var/www
total 18
drwxr-xr-x 4 root root 4 Jun 7 15:51 .
drwxr-xr-x 12 root root 14 Jun 7 14:26 ..
drwxr-xr-x 4 root root 5 Jun 7 15:23 html
drwxrwx--- 2 www-data www-data 2 Jul 2 15:21 nextcloud-data
I don’t know why root web directories are nobody nogroup
$ ls -la /var/www/html
total 35
drwxr-xr-x 4 root root 5 Jun 7 15:23 .
drwxr-xr-x 4 root root 4 Jun 7 15:51 ..
-rw-r--r-- 1 root root 10701 Jun 7 14:26 index.html
drwxr-xr-x 13 nobody nogroup 31 Jun 7 15:02 phpmyadmin
drwxr-xr-x 14 nobody nogroup 28 Jul 3 01:17 www.nextcloud.ddns.info
When I set the chown on the host
chown 33:33 -R /rpool/data/subvol-108-disk-1/var/www
$ sudo ls -la /var/www/html
total 35
drwxr-xr-x 4 www-data www-data 5 Jun 7 15:23 .
drwxr-xr-x 4 www-data www-data 4 Jun 7 15:51 ..
-rw-r--r-- 1 www-data www-data 10701 Jun 7 14:26 index.html
drwxr-xr-x 13 www-data www-data 31 Jun 7 15:02 phpmyadmin
drwxr-xr-x 14 www-data www-data 28 Jul 3 01:17 www.nextcloud.ddns.info
However, it is very strange that the directory intended for data is empty.
sudo ls -la /var/www/nextcloud-data
total 1
drwxrwx--- 2 www-data www-data 2 Jul 2 15:21 .
drwxr-xr-x 4 root root 4 Jun 7 15:51 ..
On host Proxmox
It is also interesting that I see the data on the host
ls -la /rpool/data/subvol-108-disk-1/var/www/nextcloud-data
total 28
drwxrwx--- 4 100033 100033 8 Jun 7 15:55 .
drwxr-xr-x 4 100000 100000 4 Jun 7 15:51 ..
drwxr-xr-x 10 100033 100033 10 Jul 2 15:21 appdata_oc65vcb3bp4d
-rw-r--r-- 1 100033 100033 542 Jun 7 15:54 .htaccess
-rw-r--r-- 1 100033 100033 0 Jun 7 15:54 index.html
drwxr-xr-x 4 100033 100033 4 Jun 7 19:27 nextcloud
-rw-r----- 1 100033 100033 391 Jun 7 17:30 nextcloud.log
-rw-r--r-- 1 100033 100033 0 Jun 7 15:54 .ocdata
I’ve been in trouble for days