IT기타

Railway 이용한 애플리케이션 배포

emilyyoo 2025. 2. 8. 13:41
728x90

🚀 Railway란?

Railway는 "Infrastructure as Code"(IaC) 플랫폼으로, 서버를 직접 관리하지 않고도 애플리케이션을 쉽게 배포할 수 있는 서비스다.
마치 **"Heroku 대체 서비스"**처럼 동작하면서도, 더 유연한 요금제와 강력한 기능을 제공한다.


 Railway의 특징

1. 빠른 배포

  • GitHub 저장소 연결 → 코드 푸시만 하면 자동 배포 🚀
  • Docker 지원: Dockerfile을 올리면 바로 컨테이너 빌드
  • 원클릭 배포: 템플릿을 사용해 빠르게 설정 가능

2. 서버 관리 없이 실행

  • 서버를 직접 관리할 필요 없음
  • 자동 스케일링 지원 (사용량에 따라 서버 크기 조절)
  • 사용하지 않는 동안에는 자동으로 대기 상태(Suspend)로 전환

3. 다양한 데이터베이스 제공

  • PostgreSQL, MySQL, Redis 등을 클릭 한 번으로 생성
  • Supabase PostgreSQL 같은 외부 DB도 사용 가능

4. 환경 변수 및 비밀 정보 관리

  • .env 파일 없이 Railway 대시보드에서 설정 가능
  • GitHub에 민감한 정보 노출 걱정 없음

 

***배포방법

1. Railway 가입 및 프로젝트 생성

  1. Railway 공식 웹사이트에 접속해서 가입.
  2. 대시보드에서 "New Project" 클릭.
  3. "Deploy from GitHub repo" 선택 후, GitHub 저장소 연결.

2. 환경 변수 설정

  1. "Variables" 메뉴로 이동.
  2. .env 파일에 있는 변수 추가.
    • 나는 Supabase 연결 정보를 환경변수로 두어서 아래와 같이 추가했다.: 
    •  
      POSTGRES_URL_NON_POOLING=<Supabase DB URL>

3. Dockerfile 이용한 배포

  1. Dockerfile이 있는 경우, Railway는 자동으로 이를 감지하고 빌드함.
  2. 하지만 수동으로 설정하려면:
    • "Settings"  "Deploy" → **"Build & Deploy Command"**에서 직접 Dockerfile 선택.

4. 배포 실행

  1. "Deploy" 버튼을 눌러 배포 시작.
  2. 로그를 확인하면서 에러가 없는지 확인.

5. 도메인 설정 (옵션)

  1. 기본 제공하는 서브도메인 사용 가능.
  2. 직접 도메인을 연결하려면 "Domains" 메뉴에서 설정.

이제 코드만 푸시하면 자동으로 Railway에서 빌드 & 배포됨! 🚀

728x90