为解决每次区块链连接地址变动时,都必须修改程序内或者程序内附带的连接IP地址
故实现本地hosts文件IP与域名的映射
实现方式:
场景一:
服务为传统方式启动
- 解决方法:
在服务器本地的/etc/hosts文件内添加IP和域名的映射
vim /etc/hosts
IP 域名
场景二:
服务为容器方式启动
目前我司在使用docker run创建Docker容器时,共有两种方式指定容器的网络模式,分别是:
-
host模式,使用–net=host指定。
-
bridge模式,使用–net=bridge指定。(即 -p 宿主机映射端口:容器暴露端口)
针对这两种不同的容器网络模式,容器需要有不同的方式进行本地域名映射
- 1、 host模式
使用参数
--network=host
容器每次启动时,会从宿主机中获取一份hosts文件,容器内修改hosts文件,不会影响到宿主机文件配置。宿主机内修改hosts文件后,容器重启即会重新获取一份hosts文件,覆盖原来的配置
举个例子:
宿主机中添加本地域名映射:
10.20.29.66 www.blockchain.com
容器启动方式:
docker run -itd --network=host --name nginx nginx:1.14
- 2、bridge模式 (即-p 宿主机映射端口:容器暴露端口)
使用参数
<
本文介绍了如何在不同服务启动方式下,解决区块链连接地址变动时的IP映射问题。对于传统服务,通过编辑本地hosts文件进行IP与域名映射;在Docker容器中,host模式下容器会继承宿主机hosts,而bridge模式下可通过`--add-host`参数设置映射;在Kubernetes环境中,可在Deployment中使用hostAliases参数进行配置。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



