【问题标题】:folder permissions docker-osx-dev文件夹权限 docker-osx-dev
【发布时间】:2016-09-11 13:58:01
【问题描述】:

我在 macOS 上使用 docker 和 docker-osx-dev (https://github.com/brikis98/docker-osx-dev) 一切都很好。它可以帮助我解决卷慢的问题。但是每次当我启动我的 docker-compose 时,我都会遇到权限问题,我不得不通过 docker exec 和 chmod 设置权限……我花了很多时间来寻找解决方案。我尝试使用 501 和 1000 id 的 usermod 但没有任何帮助。你知道如何解决它吗? 我的项目设置:https://bitbucket.org/SmileSergey/symfonydocker/src 谢谢!

【问题讨论】:

  • 请分享具体问题/错误,并可能在您的问题中添加一些代码 sn-ps。链接 BitBucket 还不足以得到答案
  • 我有文件权限的默认 symfony 错误:致命错误:未捕获的 RuntimeException:无法写入缓存文件“/var/www/symfony/var/cache/dev/classes.php”。在 /var/www/symfony/vendor/symfony/symfony/src/Symfony/Component/ClassLoader/ClassCollectionLoader.php:248 之后我这样做: docker exec -ti symfonydefault_php_1 bash chmod -R 777 /var/www/symfony/ 和一切都很好

标签: docker docker-compose dockerfile docker-machine


【解决方案1】:

您可以使用 http://docker-sync.iohttps://github.com/EugenMayer/docker-sync/blob/master/example/docker-sync.yml#L47 将 OSX 用户映射到容器上的 uid。这消除了整个问题,即使这将完全取代 docker-osx-dev。

【讨论】:

  • 谢谢,我以后会试试的。现在,在我度过周末尝试在 OSX 上使用 docker 之后,我通过在 vagrant 和 nfs 共享文件夹中使用 docker 解决了我所有的问题。是的,它在 vagrant 中很有趣,但对于开发人员来说效果很好;)
【解决方案2】:

作为一种快速解决方法,您可以尝试将命令添加到 your docker-compose.yml 的 nginx 部分,如下所示:

  nginx:
    image: nginx:latest
    ...
    volumes:
      - "./config/nginx.conf:/etc/nginx/conf.d/default.conf"
      - "./app:/var/www/symfony"
    command: /bin/bash -c "chmod -R 777 /var/www/symfony/ && nginx -g 'daemon off;'"

背景:

官方nginx Dockerfile指定以下默认命令:

CMD ["nginx", "-g", "daemon off;"]

正在执行的

nginx -g 'daemon off;'

您已经找到了在容器中运行chmod -R 777 /var/www/symfony/ 的快速而简单的解决方法。

通过上面docker-compose文件中的命令,我们在执行nginx -g 'daemon off;'默认命令之前先执行chmod命令。

请注意,Dockerfile 中指定的 CMD 将替换为 docker-compose 文件中定义的命令(或 docker run ... myimage mycommand 中指定的任何命令。)

【讨论】:

    【解决方案3】:

    对于 OSX 上的开发人员,只需使用 vagrant + nfs 共享文件夹。它解决了所有问题,并且不需要为 docker-compose for dev 添加任何特殊的东西。

    【讨论】:

    • 虽然这是可行的替代方案,但它不能回答问题。
    猜你喜欢
    • 1970-01-01
    • 2016-06-16
    • 2019-12-06
    • 1970-01-01
    • 2018-02-08
    • 2011-08-12
    • 2016-10-17
    相关资源
    最近更新 更多