Ubuntu 进行卷映射时Docker权限问题

Ubuntu 进行卷映射时Docker权限问题,ubuntu,docker,permissions,Ubuntu,Docker,Permissions,我想在一个容器里开始一个Jupyter笔记本。要求是在容器中创建的笔记本也应在主机上可用。为此,我执行卷映射: docker run -it --rm -p 8888:8888 -v $(shell pwd):/home/jovyan/work --name=notebook jupyter/base-notebook 运行上述命令时,我收到以下错误: docker: Error response from daemon: oci runtime error: container_linux.

我想在一个容器里开始一个Jupyter笔记本。要求是在容器中创建的笔记本也应在主机上可用。为此,我执行卷映射:

docker run -it --rm -p 8888:8888 -v $(shell pwd):/home/jovyan/work --name=notebook jupyter/base-notebook
运行上述命令时,我收到以下错误:

docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "chdir to cwd (\"/home/jovyan/work\") set in config.json failed: permission denied". ERRO[0000] error getting events from daemon: context canceled 
docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "process_linux.go:359: container init caused \"rootfs_linux.go:54: mounting \\\"/var/lib/docker/containers/7e62c50efab7141468a00ddefb59d55715449e05f1c516662ac1f73fabab2722/resolv.conf\\\" to rootfs \\\"/var/lib/docker/aufs/mnt/e71d751ce8d253eafcd0dc5f41379cc4dd73da89302cfe8171becd228fba960e\\\" at \\\"/etc/resolv.conf\\\" caused \\\"lstat /var/lib/docker/aufs/mnt/e71d751ce8d253eafcd0dc5f41379cc4dd73da89302cfe8171becd228fba960e/etc/resolv.conf: permission denied\\\"\"".
为了暂时解决此问题,我更改了主机上当前工作目录的权限:

chmod a+rwx [current directory]
我认为更改文件夹的权限不是一个好的解决方案,应该还有另一个问题

我还必须提到,我在一家没有sudo权限的公司工作,我们使用的是一个共享的主目录

实际上,我对所有图像都有这个问题。例如:

docker run -it -v /net/home/abc/Desktop/:/etc ubuntu:16.04
返回以下错误:

docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "chdir to cwd (\"/home/jovyan/work\") set in config.json failed: permission denied". ERRO[0000] error getting events from daemon: context canceled 
docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "process_linux.go:359: container init caused \"rootfs_linux.go:54: mounting \\\"/var/lib/docker/containers/7e62c50efab7141468a00ddefb59d55715449e05f1c516662ac1f73fabab2722/resolv.conf\\\" to rootfs \\\"/var/lib/docker/aufs/mnt/e71d751ce8d253eafcd0dc5f41379cc4dd73da89302cfe8171becd228fba960e\\\" at \\\"/etc/resolv.conf\\\" caused \\\"lstat /var/lib/docker/aufs/mnt/e71d751ce8d253eafcd0dc5f41379cc4dd73da89302cfe8171becd228fba960e/etc/resolv.conf: permission denied\\\"\"".
查看并注意Docker选项。默认情况下,此映像有一个未经授权的用户jovyan,对您的$pwd目录没有权限。
通过ENV,您可以修复此问题

此外,请确保docker用户有权访问您试图装载到容器中的路径

在我的例子中,我的主目录有700个权限,因此docker用户没有遍历目录路径的权限。授予读取和执行权限允许docker用户正确地执行和装载