wrapper/docker: create volume dirs ourselfes for better permissions and podman compat (backport of 79dcac82ce77d1ff0831ec6db5f647b24d4f795b)

This commit is contained in:
InsanePrawn 2022-08-30 16:01:05 +02:00
parent efd1de9b91
commit 645b3b1d2b

View file

@ -6,6 +6,8 @@ import sys
from config import config from config import config
from constants import CHROOT_PATHS from constants import CHROOT_PATHS
from exec.file import makedir
from .wrapper import BaseWrapper from .wrapper import BaseWrapper
DOCKER_PATHS = CHROOT_PATHS.copy() DOCKER_PATHS = CHROOT_PATHS.copy()
@ -65,8 +67,12 @@ class DockerWrapper(BaseWrapper):
ssh_dir = os.path.join(pathlib.Path.home(), '.ssh') ssh_dir = os.path.join(pathlib.Path.home(), '.ssh')
if not os.path.exists(ssh_dir): if not os.path.exists(ssh_dir):
os.makedirs(ssh_dir, mode=0o700) os.makedirs(ssh_dir, mode=0o700)
volumes = self.get_bind_mounts_default(wrapped_config) volumes = self.get_bind_mounts_default(wrapped_config)
volumes |= dict({config.get_path(vol_name): vol_dest for vol_name, vol_dest in DOCKER_PATHS.items()}) for vol_name, vol_dest in DOCKER_PATHS.items():
vol_src = config.get_path(vol_name)
makedir(vol_src)
volumes[vol_src] = vol_dest
docker_cmd = [ docker_cmd = [
'docker', 'docker',
'run', 'run',