All languages
Deploy Phoenix and Elixir apps without a Dockerfile

Elixir hosting that builds your release for you

Push your Elixir source and velixir compiles it into an OTP release and runs it on managed Kubernetes, with autoscaling, zero-downtime deploys, and one-click rollback. Managed Postgres for Ecto and Valkey for caching are included, hosted in the EU with data residency built in.

Why deploy Elixir on velixir

  • Push source, get a release. velixir reads your mix.exs, pulls Hex and rebar3 dependencies, compiles, and packages a mix release into a container image server-side. No Dockerfile, no local build, no Docker on your machine.
  • Releases roll out with zero downtime. New pods start and pass their health checks before old ones drain, so a deploy never drops your users mid-request, and a bad release is one click from rolled back.
  • Ecto-ready Postgres, included. Provision managed Postgres billed hourly in EUR, read DATABASE_URL from an env var, and run mix ecto.migrate as a release command on every deploy. Add managed Valkey for Phoenix.PubSub, Oban, or cache.
  • Scale the BEAM without babysitting nodes. Autoscaling absorbs concurrency spikes, one-click rollback reverts a bad release instantly, and an optional warm-standby replica turns on high availability from any plan.

Works with your stack

Popular Elixir frameworks and runtimes deploy as-is, no adapters.

Phoenix Phoenix LiveView Ecto Oban Broadway Absinthe

Runtime versions

Pick your version and we pin the exact runtime for every build.

Elixir 1.17 default Elixir 1.16 Elixir 1.15

Legacy (past upstream end-of-life, still runnable for lift-and-shift):

Elixir 1.14 Elixir 1.13 Elixir 1.12 Elixir 1.11 Elixir 1.10 Elixir 1.9

From Elixir source to production in three steps

01

Push your source

velixir deploy, GitHub Actions, or a dashboard upload. No Dockerfile.

02

We build it server-side

velixir detects Elixir, installs dependencies, and builds a container image on our infrastructure.

03

It goes live

Managed Kubernetes runs it with autoscaling, zero-downtime rolling deploys, and one-click rollback.

Elixir hosting FAQ

Which Elixir versions can I deploy on velixir?

Elixir 1.17 is the default, and velixir supports every version back through 1.9. Pin the version you want in your project config (a .tool-versions file or the elixir requirement in mix.exs) and the build uses it, with a compatible Erlang/OTP release selected to match. If you don't pin anything, you get 1.17 on current OTP.

Do I need to write a Dockerfile or build the release myself?

No. velixir detects that it's an Elixir project from your mix.exs, then fetches Hex and rebar3 dependencies, compiles, and builds a mix release into a container image entirely server-side. You just push source with the CLI (velixir deploy), GitHub Actions, or the dashboard. There is no local build step and nothing to configure in a Dockerfile.

How do I connect Postgres and run Ecto migrations?

Add a managed Postgres database (billed hourly in EUR, no egress fees) and velixir injects the connection details as environment variables that Ecto reads directly. Run mix ecto.migrate as a release command so migrations apply on each deploy, and reach for managed Valkey when you need PubSub, Oban queues, or a cache alongside it.

Will Phoenix LiveView work?

Yes, with one caveat for now: velixir does not pass WebSocket connections through yet, and that support is on its way. Until then LiveView runs on its long-polling fallback, which new Phoenix apps switch on with longPollFallbackMs. Keep the app on one replica while it long-polls, because every request from a browser has to reach the same node. Server-sent events and streaming responses already work on any number of replicas.

Deploy your Elixir app in under two minutes

Push your code and velixir builds, publishes, and deploys it in EU Central, inside the EU, with managed Postgres and Valkey a click away. No Docker, no YAML, and your first month's on us, up to €14.99.

No credit card to sign up. Add a payment method only when you're ready to deploy.