繁体   English   中英

更改docker-machine的URL

[英]Change the URL of a docker-machine

我通过docker-machine create -d azure --azure-static-public-IP创建了一台docker-machine create -d azure --azure-static-public-IP 但是我所做的是我有意更改了该VM的公共IP地址。 通过此举,我无法使用docker-machine ssh或任何与docker-machine相关的命令。 似乎它仍在向先前的公共IP发送请求。 如何更改该IP并将其转换为新IP? 我尝试了docker-machine regenerate-certs ,甚至更改了config.json,但是什么也没发生……

我看到解决此问题的唯一方法是还原该VM的先前公共IP

更改“ config.json”中的IP应该没问题。 例如,如果我必须在默认的docker-machine上更改我的IP,我会在这里:

/Users/arne/.docker/machine/machines/default/config.json

调整IP并运行

docker-machine regenerate-certs myVM

这应该工作。

您是说在运行Docker-machine ssh遇到此错误:

错误检查TLS连接:错误检查和/或重新生成证书:验证主机“ 13.91.60.237:2376”的证书时出错:x509:证书对40.112.218.127有效,对13.91.60.237有效,您可以尝试重新生成它们使用'docker-machine regenerate-certs [name]'。 请注意,这将触发Docker守护程序重启,这可能会停止运行容器。

在测试实验室中,我的第一个IP地址是40.112.218.127 ,然后将其更改为13.91.60.237 ,收到此错误。

然后,我使用此命令来重新生成它: docker-machine regenerate-certs jasonvmm ,如下所示:

[root@jasoncli@jasonye jasonvmm]# docker-machine regenerate-certs jasonvmm
Regenerate TLS machine certs?  Warning: this is irreversible. (y/n): y
Regenerating TLS certificates
Waiting for SSH to be available...
Detecting the provisioner...
Installing Docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
[root@jasoncli@jasonye jasonvmm]# docker-machine ssh jasonvmm
Welcome to Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-47-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  Get cloud support with Ubuntu Advantage Cloud Guest:
    http://www.ubuntu.com/business/services/cloud

208 packages can be updated.
109 updates are security updates.


Last login: Fri Dec  8 06:22:09 2017 from 167.220.255.48

另外,我们可以使用此命令检查新设置: docker-machine env jasonvmm

[root@jasoncli@jasonye jasonvmm]# docker-machine env jasonvmm
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://13.91.60.237:2376"
export DOCKER_CERT_PATH="/root/.docker/machine/machines/jasonvmm"
export DOCKER_MACHINE_NAME="jasonvmm"
# Run this command to configure your shell: 
# eval $(docker-machine env jasonvmm)

请使用此脚本重新生成它们docker-machine regenerate-certs VMname

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM