deploying-to-railway

Guide for deploying Python services to Railway.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "deploying-to-railway" with this command: npx skills add cpfiffer/central/cpfiffer-central-deploying-to-railway

Deploying to Railway

Guide for deploying Python services to Railway.

Prerequisites

Install Railway CLI

npm install -g @railway/cli

Login

railway login

Basic Workflow

  1. Link Project

cd /path/to/service railway link

Select workspace and project (or create new)

  1. Add PostgreSQL (if needed)

railway add

Select: Database → Postgres

IMPORTANT: Standard Postgres does NOT have pgvector. For vector search:

  1. Set Environment Variables

railway variables set KEY="value"

Reference another service's variable:

railway variables set 'DATABASE_URL=${{Postgres.DATABASE_URL}}' railway variables set 'DATABASE_URL=${{pgvector.DATABASE_URL}}'

  1. Deploy

railway up --detach

  1. Get Domain

railway domain

Returns: https://service-production.up.railway.app

Multi-Service Pattern (API + Worker)

Deploy API Service

railway link # Link to main service railway up --detach

Add Worker Service

railway add --service worker railway service link worker railway variables set 'DATABASE_URL=${{pgvector.DATABASE_URL}}' railway variables set OPENAI_API_KEY="$OPENAI_API_KEY"

Set start command in dashboard or railway.toml

railway up --detach

Gotchas

  • pgvector not available - Use pgvector template, not standard Postgres

  • Interactive prompts - Some commands need interactive mode (run manually)

  • Variable references - Use ${{ServiceName.VARIABLE}} syntax

  • Dockerfile required - For custom Python services, include Dockerfile

  • Procfile - Railway can use Procfile for multi-process apps

Useful Commands

railway status # Current project/service railway variables # List environment variables railway logs # View service logs railway service status # Deployment status railway redeploy --yes # Force redeploy

Example Dockerfile

FROM python:3.11-slim

WORKDIR /app

RUN apt-get update && apt-get install -y libpq-dev gcc && rm -rf /var/lib/apt/lists/*

COPY pyproject.toml ./ COPY myapp/ ./myapp/

RUN pip install --no-cache-dir .

CMD ["gunicorn", "--bind", "0.0.0.0:8080", "--workers", "2", "myapp.app:app"]

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

interacting-with-x

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

working-with-subagents

No summary provided by upstream source.

Repository SourceNeeds Review
General

managing-memory

No summary provided by upstream source.

Repository SourceNeeds Review
General

using-letta-api

No summary provided by upstream source.

Repository SourceNeeds Review