
Phoenix with Releases
Elixir Releases compile your application into a self-contained package with the exact runtime needed for production. This means no source code on your servers, faster cold starts, and proper runtime configuration through runtime.exs. Most importantly, releases unlock the production debugging tools that make Elixir special. Remote Observer, live console access, and hot code paths all require a properly configured release. Other platforms either block these features or make them painful to set up. Gigalixir makes releases the default on our gigalixir-24 stack because we believe you should have access to everything Elixir offers.
Faster Startup, Smaller Footprint: Releases pre-compile your application into optimized BEAM bytecode. No compilation at boot time means your app starts in seconds, not minutes. Slug sizes shrink because you ship compiled code, not source files and build dependencies.
Production Debugging Tools: Connect Remote Observer to inspect memory usage, process trees, ETS tables, and message queues in real time. Drop into a live IEx console to diagnose issues without redeploying. These tools only work with properly configured releases.
Runtime Configuration Done Right: Use runtime.exs to load environment variables at startup, not compile time. No more confusion between prod.exs and releases.exs. Your secrets stay secret and your configs stay flexible.
Zero Configuration Required: The gigalixir-24 stack auto-detects releases when you have a config/runtime.exs file. Push your code and we handle the buildpacks, node naming, and cookie configuration so clustering and remote access work immediately.
