| title | CLI |
|---|
The Railway command line interface (CLI) connects your code to your Railway project from the command line.
The Railway CLI allows you to
- Create new Railway projects from the terminal
- Link to an existing Railway project
- Pull down environment variables to run your project locally
- Open an interactive shell to a database within a project
Install with Brew, NPM or Scoop.
brew install railwayapp/railway/railwaynpm i -g @railway/clicurl -fsSL https://railway.app/install.sh | shUse this method if you prefer to interact with Railway using a native Windows binary. In a PowerShell terminal enter the following command:
scoop bucket add railway https://github.com/railwayapp/scoop-railway; scoop install railway/railwayFor additional documentation on Scoop, see here.
You can also download the prebuilt binary directly or build from source.
Login to your Railway account. Opens a browser tab which authenticates into an existing Railway session.
railway loginIf there are any issues with Browser based login you can use the --browserless flag to authenticate.
You can use Project tokens to authenticate in environments that prevent you to authenticate with browsers such as CI environments.
Project tokens allow the CLI to access all the environment variables associated
with a specific project and environment. Use the token by setting the
RAILWAY_TOKEN environment variable and then running railway run.
RAILWAY_TOKEN=XXXX railway runLink to an existing Project under your Railway account or team.
railway link <projectId>Create a new project directly from the command line.
railway initRun code inside your Railway environment. We connect your code to your infrastructure hosted on Railway by injecting environment variables.
railway run <cmd>For example, to run your node project with Railway:
railway run npm startIf you have a Dockerfile in your project directory, you can just run
railway run with no arguments to build and run the Dockerfile.
Projects might have multiple environments, by default the CLI points to the production environment. If you'd like to use a different set of environment variables and a different deployment environment you can change the setting by:
railway environmentDeploy current directory to Railway. Displays deployment logs from the service deploy.
railway upIf there are multiple services within your project, the CLI will prompt you for a service to deploy to.
Provision a database service for a project.
railway addOpen an interactive shell to a database directly in the CLI.
railway connectrailway logoutOur CLI is Open Source. Contribute to the development of the Railway CLI by opening an issue or Pull Request on our GitHub Repo.

