5

我创建了一个 docker 镜像,允许用户使用 SSH 连接它。

出于安全原因,我希望用户可以更改他们的密码。我只使用 docker 命名卷,所以我无法绑定 /etc/passwd 并且我不想挂载所有 /etc

有任何想法吗?提前致谢。

4

2 回答 2

3

最后我找到了这个解决方案:

  • 创建命名卷
  • 挂载它(例如在 /users 中)
  • 在上面设置一个影子文件
  • 在容器开始时,在 /etc/shadow 上为 /users/shadow 创建一个链接
于 2017-12-14T15:43:53.923 回答
0

在这个问题中,有人问是否可以使用 docker compose 将文件作为卷挂载(答案是肯定的),所以如果可以使用 compose 来完成,我认为使用 docker 也可以。我知道这与您的问题不同,因为它们使用主机目录/文件,但命名为卷的 docker(如您在此处看到的)用于使容器主机独立,这是通过创建一些由 docker 处理的卷完成的。
因此,尝试创建一个卷并将该卷挂载到 passwd 文件的位置。

于 2017-12-14T09:25:29.473 回答