Name-Based Port Mapper

CI Coverage Status Hex.pm License Hex.pm Version Hex.pm Docs Hex.pm Downloads

With Nbpm you don't need EPMD daemon. No additional daemons, no additional configs. Easy and simple distribution without EPMD.



To use Nbpm in your Elixir project, add it as a dependency in your mix.exs file:

def deps do
    {:nbpm, "~> 0.3.1"}


mix deps.get

to download it.

Then run

mix nbpm.install

to install Nbpm into your project.

[!NOTE] mix nbpm.install will add -start_epmd false -epmd_module Elixir.Nbpm to ELIXIR_ERL_OPTIONS in files rel/env.sh.eex and rel/env.bat.eex.

This will disable loading of EPMD daemon and will use Nbpm module to map node names to ports.

Mix task to get port number from node name

You can get port number for your current app name by using nbpm.get_port_number task:

mix nbpm.get_port_number

mix nbpm.get_port_number will output port number for your current app.

Or you can supply any node name as an argument:

mix nbpm.get_port_number my_app

mix nbpm.get_port_number my_app will output port number for my_app node name.


Installation to global: https://github.com/pertsevds/nbpm/issues/4