Skip to content
Pages in Guides

Stacks without a native runtime

Swift, Zig, Crystal and any other stack without a native runtime, deployed as a container from its Dockerfile or with Railpack.

Guide Updated View as Markdown

Part of Deploying by framework.

Go, Rust, Java and Kotlin, .NET and Deno are built on the server (build.md) unless the repository commits a Dockerfile, like Ruby and Elixir. The rest (Swift, Zig, Crystal...), and any of those you want packaged, run as container applications: from your Dockerfile, or without one with Railpack.

Shell
noust create -d api.example.com -s https://github.com/you/api.git -t container
noust setup railpack                      # once, for repositories with no Dockerfile
noust create -d api.example.com -s https://github.com/you/api.git -t container --builder railpack

Each release is an image, so rollback is as quick as for any other application (containers.md). The migration is a pre_deploy hook that runs in a one-off container of the new image (bin/rails db:migrate, mix ecto.migrate).

A static site generator whose tools the server has (Eleventy and Docusaurus need only Node) is a static application with install, build and publish_directory in its build: block; one whose toolchain the server does not have is built where the toolchain is, as the Jekyll section above says.

Something on this page is wrong or unclear? Report it on GitHub.

Help, contributing and the project’s policies are under Project.

Search the documentation

Type to search every page.

↑ ↓ to move, Enter to open, Esc to close