【问题标题】:Docker permission problems when doing volume mapping进行卷映射时的 Docker 权限问题
【发布时间】:2017-09-23 11:32:21
【问题描述】:

我想在容器中启动 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 

为了暂时解决这个问题,我在宿主机上更改了当前工作目录的权限:

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 "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\\\"\"".

【问题讨论】:

    标签: ubuntu docker permissions


    【解决方案1】:

    另外,请确保您的 docker 用户可以访问您尝试在容器中挂载的路径。

    在我的例子中,我的主目录有 700 个权限,所以 docker 用户无权遍历目录路径。授予读取和执行权限允许 docker 用户通过并正确挂载。

    【讨论】:

      【解决方案2】:

      查看https://github.com/jupyter/docker-stacks/tree/master/base-notebook 并注意 Docker 选项。默认情况下,此图像有一个无特权的用户 jovyan,对您的 $pwd 目录没有权限。 通过 ENV,您可能会解决此问题。

      【讨论】:

        猜你喜欢
        • 2021-01-04
        • 1970-01-01
        • 2019-01-14
        • 1970-01-01
        • 2017-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-22
        相关资源
        最近更新 更多