Ways to distribute a phoenix project?

Hi, thanks for replying. :slightly_smiling_face:

Can you give some idea, what are the major platforms for which I have to build separate releases?

The mix release documentation says…

The following must be the same between the host and the target:

  • Target architecture (for example, x86_64 or ARM)
  • Target vendor + operating system (for example, Windows, Linux, or Darwin/macOS)
  • Target ABI (for example, musl or gnu)

This is often represented in the form of target triples, for example, x86_64-unknown-linux-gnu , x86_64-unknown-linux-musl , x86_64-apple-darwin .

So to be more precise, to deploy straight from a host to a separate target, the Erlang Runtime System (ERTS), and any native dependencies (NIFs), must be compiled for the same target triple.

I want to support all major Linux distributions, what releases should I build using docker, any idea?