FAQ

What is Hadoken?

Hosting for Rails apps. You run hadoken in your project directory and get a live HTTPS URL. No config files, no Dockerfile, no infrastructure to manage.

Do I need a Dockerfile?

No. Hadoken reads your Gemfile.lock and builds a container automatically using Cloud Native Buildpacks. No Dockerfile, no Procfile, no YAML.

What does the bare hadoken command do?

It deploys. hadoken is an alias for hadoken deploy. On first run it detects your app, creates a project, builds, deploys, and prints the URL. After that, it just deploys.

What gets packaged?

Files tracked by git (git ls-files). Your .gitignore is respected. Use --include-untracked to add untracked files.

Can I use SQLite?

Yes. Each app gets a persistent volume. SQLite databases survive across deploys.

What about PostgreSQL or MySQL?

Hadoken detects your database from the gems in your Gemfile.lock (pg or mysql2). You'll need to set DATABASE_URL via hadoken env set to point at your database host.

Do migrations run automatically?

Yes. rails db:prepare runs on every deploy. For manual migrations, use hadoken run -- rails db:migrate.

How do I set environment variables?

hadoken env set KEY=VALUE. Each change triggers a rolling restart. Values are encrypted at rest and masked in output by default.

Is the CLI a Ruby gem?

No. It's a standalone Go binary. No Ruby dependency. It talks to the Hadoken API over HTTPS.

How is this different from Kamal?

Hadoken replaces Kamal, it doesn't wrap it. There's no config/deploy.yml. Hadoken handles the full pipeline: build, deploy, TLS, env vars, logs, console. You don't manage servers.

How is this different from Heroku?

Similar developer experience, but Hadoken is built specifically for Rails. It detects your stack from Gemfile.lock, runs migrations automatically, and gives you Rails console access out of the box.