plcholder

plcholder

Anyone working on a Kamal2-style deployment tool for Elixir/BEAM or anything else to help make deployment easier?

I discovered Elixir six years ago, and it’s been one of my favorite languages since. It feels like cheating — fun, easy to write, and easy to reason about. I’ve spent more time and money on Elixir/BEAM content than any other language.

Elixir is often marketed as a tool for everyone — from solo devs to large teams — and I believe that, especially with tools like Phoenix, LiveView, Nerves, and Nx. With Phoenix, I can build full-featured web apps on my own with far less effort than in Go, JavaScript, or Rust.

But that’s where the smooth experience ends. Deployment feels clunky and inconsistent, especially compared to the elegance of writing Elixir or the convenience of modern serverless platforms. I don’t mind spinning up a VPS and throwing a container on it, but it feels primitive compared to what other ecosystems offer.

Serverless feels almost too good to ignore. Sure, there are concerns about vendor lock-in or surprise bills, but with open-source options and better billing safeguards, those risks are becoming manageable.

Last weekend, I was building something and wanted to use Phoenix — it would’ve been 10x easier and more enjoyable — but deployment made me hesitate. I ended up using Rust with Cloudflare Workers instead.

So here’s my question: is the Elixir core team or community working on simpler deployment solutions for solo devs — something like Kamal2, but for the BEAM? I get that orchestrating BEAM nodes is powerful and part of the magic, but for many solo devs, deployment feels like muddy plumbing compared to writing Elixir. And while BEAM might offer better performance-per-dollar on a VPS, that often misses the point — solo devs would rather save time and ship faster using platforms like Vercel or CF Workers.

TL;DR: Is anyone working on a Kamal2-style deployment tool for Elixir/BEAM to help solo devs harness its full power without the deployment headaches?

Most Liked

f0rest8

f0rest8

I wanted to chime in to say that fly has made deployment for me with Mosslet super easy, all things considered. I’m a solo dev and workign aroudn also being a stay-at-home parent so I often feel pressed for time and headspace, and I’ve been able to run a distributed setup in production with fly and using existing tooling/packaging.

With fly there is some manual managing you have to do, but my experience with it has been really great. I’ll often have documentation opened up whenever I need to update things because I’ll forget a particular command or something. But I’ve found it’s really easy to quickly find the information you need. They’re also working on a managed postgres offering so that could be another plus for solo devs and small teams.

It might be worth revisiting fly for you — anyway didn’t mean to be such an ad for them, just thought I’d share they’re part of the stack that I feel makes it possible for me to be a solo dev.

posilva

posilva

There is no reason to not deploy with Kamal2 I do not see the point of having anything specific to elixir. Elixir release bundles can be deployed as a compressed file over ssh if you want nothing except a VPS you can even bundle Erlang if you want so all in one. Other then that just ship a docker container, kamal2, fly.io, Kubernetes, ECS task and IIRC there is even a AWS lambda runtime. We need less tools and more unified ways of working so we can use as much as possible the same tools no matter what is the programming language.

Where Next?

Popular in Discussions Top

kostonstyle
Hi all How can I compare haskell with elixir, included tools, webservices, ect. Thanks
New
AstonJ
Please see the new poll here: Which code editor or IDE do you use? (Poll) (2022 Edition) It’s been a while since we first asked this, I...
208 31307 143
New
sergio
There’s a new TIOBE index report that came out that shows Elixir is still not in the top 50 used languages. It also goes on to call Elix...
New
Crowdhailer
I’ve been hearing much about the new formatter and it’s something I have been keen to try. I find examples buy far the most illuminating...
248 19365 150
New
rower687
Hi all, I’ve been reading a lot about the “let it crash” term and how supervising processes and the whole messaging passing make an elixi...
New
New
Qqwy
Looking at the stacks that existing large companies have used, WhatsApp internally uses Mnesia to store the messages, while Discord uses ...
New
gausby
I asked this very same question on twitter and got some interesting feedback, but I thought it would be a good question to ask here as we...
1207 39523 209
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New
arcanemachine
https://nitter.net/josevalim/status/1744395345872683471 https://twitter.com/josevalim/status/1744395345872683471
New

Other popular topics Top

baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
ovidiubadita
Hey all, I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
boundedvariable
I am going through the kafka architecture. All the features what the kafka is providing are already in Erlang. I would like hear your opi...
New
gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
shijith.k
I am trying to start a new phoenix project with elixir 1.9, but mix phx.new does not work. It says that ** (Mix) The task "phx.new" could...
New
chrismccord
This release brings a number of exciting features, including integration with the new Phoenix LiveDashboard and Phoenix LiveView. There h...
New
AngeloChecked
What learn first? Rust or Elixir Hi Elixir community! I’m here because i want learn a new language. I’m a junior developer and mainly i ...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New

We're in Beta

About us Mission Statement