The Heroku Experience, Running on Kubernetes
Deploy standard Rails apps with git push. Scale with gigalixir ps:scale.
Get the production stability of Kubernetes without managing clusters, writing YAML, or suffering through daily restarts.

Kubernetes is the industry standard for infrastructure stability, but it was never designed for developer ergonomics.
This forces Rails teams to maintain complex YAML manifests and manage cluster upgrades instead of building features.
Gigalixir provides the high-level abstraction layer you miss, running on the raw Kubernetes infrastructure you need. You get a production-grade deployment pipeline without the DevOps overhead.
Rails applications rely heavily on ActiveRecord and PostgreSQL, but most cloud platforms put barriers between them.
Connection poolers like PgBouncer often break transaction handling and prepared statements, forcing you to rewrite database logic.
Gigalixir provides a direct network path to your database, so your standard ActiveRecord configuration works exactly as intended.
Connect your application directly to your PostgreSQL database without an intervening connection pooler.
This allows you to use features like prepared statements and advisory locks that are often broken by middleware like PgBouncer.
You get the raw performance and feature set of Postgres without compatibility headaches.
Execute database migrations against your production database using gigalixir ps:migrate.
This command spins up a temporary instance with your exact environment variables and code.
It eliminates the security risk of connecting from a local machine and the complexity of setting up SSH tunnels.
We provision and manage high-availability PostgreSQL instances backed by durable storage.
We handle automated daily backups, extensions, and version upgrades. You get a robust data layer that scales with your application without needing a dedicated DBA.

The Questions We Get The Most at Gigalixir Support
No.
While Gigalixir runs on Kubernetes, we abstract the container creation process using Cloud Native Buildpacks. When you push your code, our build system detects the Gemfile and Gemfile.lock in your repository root.
It automatically pulls the correct Ruby version, installs your dependencies, and compiles your assets.
This eliminates the need for you to write, secure, and maintain a multi-stage Dockerfile or worry about base image updates.
Background workers are treated as first-class citizens. You define them in your Procfile just like your web process (e.g., worker: bundle exec sidekiq).
Unlike serverless platforms that enforce strict execution time limits (timeouts), Gigalixir runs your worker processes continuously.
This means you can process long-running CSV imports or video transcoding jobs without the process being killed arbitrarily.
You can scale these workers independently of your web traffic using gigalixir ps:scale.
Many platforms force database connections through a pooler like PgBouncer to manage connection limits.
While useful, PgBouncer is not transparent; it breaks PostgreSQL features that ActiveRecord and Rails rely on, specifically named prepared statements (used for query caching) and advisory locks (used for safe migrations).
Gigalixir provides a direct network path to your database instance, allowing ActiveRecord to function with its default, optimized configuration.
Gigalixir containers utilize an ephemeral filesystem. This means that any files written to disk (like user uploads in public/uploads) will be lost when the container restarts or during a new deployment.
For Rails applications, we strongly recommend configuring Active Storage to use an external service like Amazon S3, Google Cloud Storage, or Azure Blob Storage.
This ensures your user data is persisted independently of your application lifecycle.
The migration is designed to be as close to "copy-paste" as possible.
Because we support the same buildpacks and Procfile structure, your codebase likely requires no changes.
For the database, you can use standard PostgreSQL tools.
Create a backup of your Heroku database, download the dump file, and pipe it directly into your Gigalixir database using pg_restore connected via the gigalixir pg:psql tunnel.
We do not use proprietary data formats.
Reach out directly to the Engineers who built Gigalixir to discuss your specific architecture, integration challenges, or compliance constraints here 👇
Stop fighting generic cloud infrastructure.
Whether you’re working with Elixir, Python, or Node.js, get the specialized support and performance your application deserves.