0Pricing
Erlang OTP: Distributed & Fault-Tolerant Systems Programming · Lesson

Creating Erlang Releases

Use tools like rebar3 and relx to bundle your Erlang application, its dependencies, and the Erlang runtime into a self-contained release.

What are Erlang Releases?

When you develop an Erlang application, it's a collection of modules and configuration files. To deploy it, you need to package it all up.

An Erlang Release is a self-contained, deployable package of your application, its dependencies, and optionally, a specific version of the Erlang Runtime System (ERTS).

  • It's like a standalone executable for your Erlang system.
  • It simplifies deployment by bundling everything needed to run.

Benefits of a Release

Why go through the effort of creating a release? Releases offer significant advantages for production systems:

  • Self-contained: Includes all necessary Erlang libraries and even the Erlang VM itself.
  • Simplified Deployment: Just copy the release folder to a server and start it.
  • Version Management: Each release has a clear version number, making upgrades and rollbacks easier.
  • Foundation for Live Upgrades: Releases are essential for Erlang's famous 'hot code loading' feature (covered in a later lesson!).

All lessons in this course

  1. Creating Erlang Releases
  2. Hot Code Loading & Upgrades
  3. Release Versioning & Deployment
  4. Release Configuration & Boot Scripts
← Back to Erlang OTP: Distributed & Fault-Tolerant Systems Programming