更改docker-machine的默认用户密码

3
我正在使用docker-machine来配置生产环境以及docker swarm。当你创建一个新的docker-machine时,默认的 docker 用户密码是 tcuser 。 你需要这个密码来将你的机器与其他站点的配置链接到 .ssh / authorized_keys 文件中。
当你开始启动服务时,你会想要更改默认的 docker 用户密码,这样你就可以保护你的系统免受未经授权的访问(docker用户是sudoer!),但是当你运行 passwd 命令并重新启动机器时,你会发现你所做的更改已经被还原。
问题是:我应该在哪里或如何更改 docker 用户密码才能在重启后保持更改?
1个回答

6

Boot2docker是一个ISO镜像,它启动了一台轻量级机器,并在其中运行docker daemon。它有两个目录来存储持久化信息:

  • /var/lib/booot2docker:用于存储操作系统配置。
  • /var/lib/docker:用于存储docker daemon的配置。

这两个文件夹在启动时会填充到tmpfs文件系统中,因此您需要在此处进行更改。

因此,要更改密码,您需要执行docker-machine ssh YourMachine登录到机器中。然后更改文件/var/lib/boot2docker/profile并向其添加此行:

echo "docker:YourNewPassword"|sudo chpasswd

然后,您需要重新启动机器,例如从主机中启动“ docker-machine restart YourMachine”。这样,每次启动时都会执行“ profile”脚本,并将密码重置为您选择的密码。
您可以检查旧密码“ tcuser”不再起作用,这是预期的。
附:我仍然不明白为什么在stackoverflow或Google中寻找解决此问题的方法如此困难...我真的认为这很重要。

"Boot2Docker 是垃圾。" - Jacob Evans

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接