【问题标题】:Cannot connect Elixir nodes on MacBook Pro无法在 MacBook Pro 上连接 Elixir 节点
【发布时间】:2016-09-01 17:00:52
【问题描述】:

我的 macbook pro 上似乎无法连接两个节点。我在用 iex —sname fooiex —sname bar 在两个单独的终端会话中,他们看不到对方。我试过设置防火墙并将其完全关闭,但没有成功。

从 foo,我使用 Node.self 看到全名是 :"foo@ewHBook-Pro",然后从 bar,我正在尝试 Node.connect :"foo@ewHBook-Pro"Node.ping :"foo@ewHBook-Pro"

【问题讨论】:

    标签: elixir


    【解决方案1】:

    主机名解析在 OSX 上有点棘手。尝试使用带有 --name "foo" 的长名称。如果失败,请明确告诉它您要使用的主机名:

    --name "foo@`hostname`"
    

    然后名称将类似于:"foo@ewHBook-Pro.local",您可以在Node.connect/1Node.ping/1 中使用它。

    【讨论】:

    • 感谢您让我走上正确的道路。我使用了iex —name foo@ewHBook-Pro.localiex —name bar@ewHBook-Pro.local,然后能够连接到Node.connect :"foo@ewHBook-Pro.local"
    【解决方案2】:

    这可能是您的主机文件中的问题。查看 pma 在this GitHub issue 上的评论。

    该问题的解决方案是使用iex --sname foo@localhostiex --sname bar@localhost

    【讨论】:

    • 谢谢@Gazler。我尝试使用 localhost 作为短名称,但它仍然不起作用。我最终不得不使用 --name 和完整的主机名,包括 .local 才能让它工作。
    • iex --sname iggy@localhost 后跟 Node.connect :iggy@localhost 在我的电脑上工作!谢谢!!
    【解决方案3】:
    sudo vi /etc/hosts
    

    然后添加一行

    127.0.0.1    macbook
    

    macbook 是您的计算机名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-30
      • 2018-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-03
      相关资源
      最近更新 更多