After installing the docker-ce (https://docs.docker.com/install/linux/docker-ce/ubuntu/) and testing the setup, you’re greeted with the following error:
user@lxc-cont:~# sudo docker run hello-world
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused “process_linux.go:430: container init caused \”rootfs_linux.go:58: mounting \\\”proc\\\” to rootfs \\\”/var/lib/docker/vfs/dir/7334956ce039ef86a0d6b9e017c2166549cd4c4098ea51f29b98c39aeba4ac0b\\\” at \\\”/proc\\\” caused \\\”permission denied\\\”\””: unknown.
ERRO[0001] error waiting for container: context canceled
You need to allow the use of the keyctl() system call and nesting, be aware that this will expose procfs and sysfs contents of the host to the guest and is a security concern (https://pve.proxmox.com/wiki/Linux_Container).
Login to your Proxmox host, via SSH or web shell.
Go to /etc/pve/local/ and edit your cointainer config file:
vi /etc/pve/local/lxc/<container_ID>.conf
Add “features: keyctl=1,nesting=1” to the config file
Restart LXC container and you’re done, docker should run now.