~/.ssh/my_id_rsa
创建的虚拟机中的 docker-machine create
都会消失。我在docs.docker.com上阅读过文档,但是我找不到有关此问题的信息。
我的主机是Mac(El Capitan),而docker-machine的版本如下:
$ docker-machine version
docker-machine version 0.6.0, build e27fb87
我使用以下选项创建了我的虚拟机:
$ docker-machine create --driver virtualbox dev
有关如何解决此问题的建议吗?我应该在哪里看看?
(host) $ docker-machine create --driver virtualbox dev
(host) $ docker-machine ssh dev
(dev) $ ssh-keygen
...
(dev) $ ls ~/.ssh
authorized_keys authorized_keys2 id_rsa id_rsa.pub
(dev) $ logout
(host) $ docker-machine restart dev
(host) $ docker-machine ssh dev
(dev) $ ls ~/.ssh
authorized_keys authorized_keys2
哪里是“id_rsa”和“id_rsa.pub”?
答案 0 :(得分:2)
通常,我没有指定任何关于ssh键的内容:docker-machine
在~/.docker/machine/machines/<amachine>/
如果您想指定自己的,请参阅this example from the docker-machine
documentation:
$ docker-machine create \
--driver generic \
--generic-ip-address=203.0.113.81 \
--generic-ssh-key=~/.ssh/id_rsa \
vm
OP补充道:
(dev) $ logout
(host) $ docker-machine restart dev
(host) $ docker-machine ssh dev
这就是在虚拟机本身中创建ssh密钥:基于TinyCore的boot2docker只保留/ var / lib / boot2docker中的内容,没有其他内容。
它会挂载/Users
,但除此之外,其他任何内容(包括/home/docker
,~
中的~/.ssh
)都会重置为boot2docker.iso
原始内容下次重启。
请参阅“boot2docker: Persist data”
要使那些ssh密钥在会话中持续存在,您需要:
/var/lib/boot2docker