如何在Docker容器中使用IP

时间:2019-05-07 07:29:15

标签: node.js mongodb docker kubernetes minikube

如果我在我的nodejs应用中声明mongo db的IP地址,该如何创建公共容器映像?

const client = mongoose.connect("mongodb://192.168.99.100:27017/db", ...
  1. 我是否需要使用诸如public-ip之类的库来获取地址:
const publicIp = require('public-ip');

(async () => {
    console.log(await publicIp.v4());
    //=> '46.5.21.123'

    console.log(await publicIp.v6());
    //=> 'fe80::200:f8ff:fe21:67cf'
})();
  1. 我是否必须从头知道容器将使用哪个地址?

  2. 或者有某种惯例,例如,如果容器在一个容器上运行,它们共享相同的内部本地地址127.0.0.1?

1 个答案:

答案 0 :(得分:0)

您应该查看Kubernetes Services。 Pod及其内部的容器应该是短暂的。如链接中所述:

  

每个Pod都有自己的IP地址,即使是那些IP地址   不能依靠它来保持稳定。

另一方面,服务具有稳定的IP地址。它们还允许使用同一链接中指定的环境变量和DNS进行发现。