在Windows的Docker中,对mkdir / chown的权限被拒绝

Joe*_*uga 2 windows permissions docker

我正在开发一个虚假博客并将其部署为docker容器。由于我项目的目标之一是利用实时数据开发主题和其他内容,因此,我已根据ghost docker映像的建议为/ var / lib / ghost目录创建了卷挂载。

虚假docker映像可以很好地安装驱动器,但是当尝试对文件进行chown时,会出现权限被拒绝的错误。我正在运行Windows 10的Creator更新和适用于Windows的最新Docker(即Windows 10 Pro versin 1703和Docker版本17.03.1-ce-win5)

作为测试,我在家里和办公室都遵循此步骤(在Windows 10的早期版本中):

  1. 在C:\ users \ joe \中创建一个Project \ site目录
  2. 将docker-compose.yml文件放在目录下:
  3. docker-compose up

docker-compose.yml

version: '3'
services:
  blog:
    image: ghost
    volumes:
      - ./blog:/var/lib/ghost
    ports:
      - "2368:2368"
Run Code Online (Sandbox Code Playgroud)

在我的工作机上,它会创建博客目录,并按照幽灵博客的预期内容填充主题和内容。

在我的家用计算机上,出现以下错误:

错误:博客无法启动服务博客:创建安装源路径“ / C / Users / joe / Projects / site / blog”时出错:mkdir / C / Users / joe / Projects / site / blog:权限被拒绝错误:遇到错误同时提出该项目。

如果我自己创建目录并docker-compose.yml再次运行,则会收到此错误:

blog_1 | chown:更改“ / var / lib / ghost”的所有权:权限被拒绝

site_blog_1以代码1退出

挂载目录绝对有效,我已经运行了适用于Windows的Docker共享驱动器设置上显示的alpine ls / data示例。

我已经比较了docker,虚拟网络,家庭和工作之间的目录中的设置-我能找到的唯一区别是因为工作在域上并且具有不同的用户名,而我的Windows版本是1607。

我不知道这是一个错误,还是当前Windows && docker之间的交互不良,或者我在本地做错了什么。我承认我倾向于后者,因为我能找到任何关于这个文件的任何地方。

Joe*_*uga 7

这个问题(我以某种方式错过了)将配置文件装入容器时出错

回答问题。

我取消共享了C,转发了它,仍然遇到了问题。我单击“重置凭据”,然后将其重新共享(输入密码),它可以正常工作。

  • 您在哪里点击重置凭据? (3认同)