【问题标题】:Mount Volume To User's Home Directory In Docker Container在 Docker 容器中将卷挂载到用户的主目录
【发布时间】:2016-03-13 16:39:51
【问题描述】:

我想将一个卷挂载到我的 Docker 容器内的用户主目录。在我的 docker-compose.yml 文件中,我指定了以下 Volumes 属性

volumes:
  - ./conf:$HOME/conf

我希望这会将卷安装到/root/conf,但这似乎不会发生。 Docker/Docker Compose 是否不支持卷路径中的环境变量替换?有没有办法可以将卷挂载到用户的主目录,而不必知道主目录是容器内的 /root?

【问题讨论】:

  • 哪个用户 - 运行 docker 命令的当前用户或在 Dockerfile 中设置的容器内的用户?
  • 容器内的用户。我在容器内运行的应用程序在容器内启动后将在用户的主目录中查找文件。
  • 我认为这是倒退的,我的意思是 - 应用程序总是可以在同一个位置查看,你只需在那里安装不同的东西。容器中的用户将始终相同。
  • 有朝一日 docker 没有机会决定将默认用户设置为 root 以外的用户吗?
  • 你可以控制这个:Dockerfile中的USER命令:docs.docker.com/engine/reference/builder/#user

标签: docker docker-compose


【解决方案1】:

正如@Michael 在 cmets 中提到的,我可以使用 USER 命令确保在容器中运行应用程序时使用特定用户。这将允许我将卷挂载到该用户的主目录并保证为我的应用准备了正确的文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    • 2021-01-13
    • 2021-09-17
    • 2017-01-01
    • 1970-01-01
    • 2016-11-10
    相关资源
    最近更新 更多