首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改docker-machine的URL

更改docker-machine的URL
EN

Stack Overflow用户
提问于 2017-12-08 11:30:15
回答 2查看 2.4K关注 0票数 0

我通过docker-machine create -d azure --azure-static-public-IP创建了一台机器。但我所做的是故意更改了该虚拟机的公共IP地址。有了这个移动,我不能docker-machine ssh或任何对接机相关的命令。似乎还在向以前的公网IP发送请求。如何更改IP并将其转换为新IP?我尝试了docker-machine regenerate-certs,甚至更改了config.json,但什么都没有发生…

我认为修复此问题的唯一方法是恢复该虚拟机以前的公共IP

EN

回答 2

Stack Overflow用户

发布于 2017-12-08 14:54:58

您应该可以更改"config.json“中的IP。例如,如果我必须在我的默认docker-machine上更改我的IP,我会转到这里:

代码语言:javascript
复制
/Users/arne/.docker/machine/machines/default/config.json

调整IP并运行

代码语言:javascript
复制
docker-machine regenerate-certs myVM

这应该是可行的。

票数 2
EN

Stack Overflow用户

发布于 2017-12-08 14:51:45

你的意思是当你运行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,如下所示:

代码语言:javascript
复制
[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

代码语言:javascript
复制
[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

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47707283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档