|Docs

Build & Deploy

Railway supports three types of compute: persistent services for long-running processes like web apps and APIs, cron jobs for scheduled tasks, and functions for single-file TypeScript code.

Configure your services with variables to manage secrets and configuration values, and organize them across environments to support different stages of your workflow. From there, control how your code is built and deployed.

Compute primitives

TopicDescription
ServicesLong-running processes like web apps, APIs, and background workers.
Cron JobsScheduled tasks that run on a defined cadence and exit on completion.
FunctionsSingle-file TypeScript code deployed directly from the canvas.

Configuration

TopicDescription
EnvironmentsManage different stages of your workflow with static and ephemeral environments.
VariablesManage configuration values and secrets for your services.
Config as CodeDefine your Railway configuration in code with railway.toml.

Builds

TopicDescription
BuildsUnderstand how Railway builds your applications.
Build ConfigurationConfigure build settings for your services.
DockerfilesUse Dockerfiles to define custom build processes.
RailpackRailway's next-generation build system.
NixpacksThe Nixpacks build system.

Deployments

TopicDescription
DeploymentsUnderstand the deployment lifecycle on Railway.
GitHub AutodeploysAutomatically deploy when you push to GitHub.
HealthchecksConfigure healthchecks to ensure your services are running correctly.
ScalingScale your services horizontally and vertically.
RegionsDeploy to specific regions around the world.