Elixir

Détecté via mix.exs. Construit une release Mix. Erlang et Elixir restent hors de l'image d'exécution.

Guides de déploiement pas à pas : Elixir and Phoenix.

Consultez Buildpackspour comprendre la détection et la politique de versions.

Détection

mix.exs dans le Base directory.

Versions

Par défaut, Elixir 1.20 avec Erlang/OTP 28. Branches d'Elixir publiées en septembre 2026 : 1.15-1.20. Branches d'OTP publiées : 26-29. Vous obtenez le dernier correctif de la branche demandée.

Pour fixer la version d'Elixir, dans cet ordre :

  • Une entrée elixir dans .tool-versions (avec le style asdf 1.18.2-otp-27, c'est la partie avant le trait d'union qui compte)
  • .elixir-version

La contrainte elixir: dans mix.exs est une plage, pas une version fixée. Nodion ne l'utilise pas. Une ancienne contrainte ~> 1.17 fonctionne toujours avec une version par défaut plus récente.

Fixez la version d'Erlang avec une entrée erlang dans .tool-versions.

Installation et build

mix local.hex, mix local.rebar, mix deps.get --only prod. Si mix assets.deploy existe, il s'exécute ensuite. Puis mix release --overwrite.

L'app doit être configurée pour les releases Mix. La release embarque ERTS, l'image d'exécution ne contient donc que la release.

Au lancement, PHX_SERVER=true est défini pour démarrer un endpoint Phoenix. Cela n'a aucun effet sur les releases qui n'utilisent pas Phoenix.

Commande de démarrage

<release>/bin/<app> start, en privilégiant le nom de l'app OTP défini dans mix.exs. Un Procfile permet de remplacer la commande. Votre app doit écouter sur PORT (Phoenix lit PORT si la release a été générée ainsi).

Offrez un cloud à votre agent.

Jusqu'à 15 € de crédit de bienvenue à l'inscription.

Continuer avec GitHub

ou par e-mail

Restez informé.

Les nouveautés du produit, sans spam. Désabonnez-vous à tout moment.