Docker Machine Generic驱动
2016-07-12 本文已影响979人
zerolinke
Generic 通用
创建一个machines通过SSH使用已经存在的虚拟机或是主机。
这是很有用的如果你使用的主机提供商没有直接的支持,或是你想导入已经存在的主机让Docker Machine去管理。
这个驱动将执行一系列创建的人物:
- 如果docker没有运行在主机上,它将被自动安装.
- 它会更新主机的软件包(apt-get update, yum update).
- 为了确保docker daemon的安全它会生成证书.
- docker daemon 将会重启,因此所有正在运行的容器将会停止.
- 主机的hostname将被更改为machine name.
Example
创建一个machine的实例,需要指定--driver generic
,主机的IP地址,DNS名和SSH私钥路径去连接它.
$ docker-machine create \
--driver generic \
--generic-ip-address=203.0.113.81 \
--generic-ssh-key ~/.ssh/id_rsa \
vm
Sudo privileges
使用SSH进入主机的user可以通过--generic-ssh-user
标识指定。这个用户必须有passworld-less的特权,如果不是这样,你需要去编辑sudoers
文件去配置user作为一个sudoer with NOPASSWD. 参考 https://help.ubuntu.com/community/Sudoers.
Options
-
--generic-engine-port
:Docker Daemon使用的端口(注意:这个标识在boot2docker中无效) -
--generic-ip-address
:必需字段,主机IP地址. -
--generic-ssh-key
:SSH user的私钥路径. -
--generic-ssh-user
:SSH连接使用的username. -
--generic-ssh-port
:SSH使用的端口.
注意: 你必须使用一个Machine支持的基础操作系统。
环境变量和默认值:
CLI option | Environment variable | Default |
---|---|---|
--generic-engine-port |
GENERIC_ENGINE_PORT |
2376 |
--generic-ip-address |
```GENERIC_IP_ADDRESS`` | - |
--generic-ssh-key |
```GENERIC_SSH_KEY`` | - |
--generic-ssh-user |
```GENERIC_SSH_USER`` | root |
--generic-ssh-port |
```GENERIC_SSH_PORT`` | 22 |