> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudtype.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Ruby on Rails

## 준비 및 확인사항

### 지원 Ruby 버전

* **2.5, 2.6, 2.7, 3.0, 3.1, 3.2**
* Rails 버전별 필요 Ruby 사양
  * Rails 5.2.x: 2.5
  * Rails 6.0.x: 2.6
  * Rails 6.1.x: 3.0
  * Rails 7.0.x: 3.1
* ⚠️ 로컬/테스트 환경과 클라우드타입에서 설정한 Ruby 버전이 상이한 경우 정상적으로 빌드되지 않을 수 있습니다.

## 대시보드를 통한 생성

### 1. 템플릿 선택하기

* **[Github 저장소에서 템플릿 보기](https://github.com/cloudtype-examples/ruby-on-rails.git)**

* 시작하기 페이지의 **언어/플랫폼** 카테고리에 접속 또는 `⌘ + K` 를 사용하여 `rails` 를 검색하고 `Ruby on Rails` 템플릿을 클릭하세요.

<Figure className="mt-5 mb-12" src="quickstart/rails/select_template.png" size="3xl" />

### 2. 새 저장소(repository) 생성하기 또는 나의 저장소 선택하기

클라우드타입은 기본적으로 사용자 Github 계정의 저장소에 반영된 소스를 배포합니다.

* 1️⃣ **배포하려는 저장소가 없다면**
  ⇒ 클라우드타입이 제공하는 예제 저장소를 사용자의 Github 계정에 생성합니다.
* 2️⃣ **배포하려는 저장소가 있다면**
  ⇒ 클라우드타입에서 배포할 사용자 본인의 저장소를 선택합니다.

#### 1️⃣ 배포하려는 저장소가 없는 경우

* 아래의 그림처럼 **비공개 저장소 설정하기** 여부만 선택한 후 `저장소 만들기` 를 클릭하면 사용자의 Github 계정에 해당 템플릿 저장소가 자동으로 생성됩니다.

<Figure className="mt-5 mb-12" src="quickstart/rails/repository-1.png" size="3xl" />

#### 2️⃣ 배포하려는 저장소가 있는 경우

* Github 계정에 존재하는 저장소를 사용하려는 경우 아래의 화면처럼 여러 저장소 중 배포를 원하는 항목을 선택하세요. 이미 위에서 저장소를 만든 경우 이 부분은 건너뛰어주세요.

<Figure className="mt-5 mb-4" src="quickstart/rails/repository-2.png" size="3xl" />

* 저장소를 직접 선택한 경우, 빌드 및 시작을 위한 명령어 등 세부 설정이 기본 설정과 다를 수 있습니다. 아래의 그림처럼 빌드 설정의 **설정변경** 버튼을 클릭하고 수정이 필요한 설정사항을 수정해주세요.

<Figure className="mt-5 mb-12" src="quickstart/rails/repository-3.png" size="3xl" />

### 3. 배포하기

* 위 과정을 마친 후 마지막으로 배포할 리전을 선택하고 `배포하기` 버튼을 클릭하면 배포가 자동으로 진행됩니다.

<Figure className="mt-5 mb-4" src="quickstart/rails/deployment-1.png" size="3xl" />

<Figure className="mt-5 mb-12" src="quickstart/rails/deployment-2.png" size="3xl" />

***

## CLI 를 통한 생성

### 1. 사전준비

아래 가이드에 따라 CLI 를 설치하고 로그인을 진행해주세요.<br />
[CLI 설치하기](/ko/developers/cli/install)

### 2. 설정파일 생성

`.cloudtype/app.yaml` 파일을 생성하세요.

#### Ruby on Rails

```yaml theme={null}
name: ruby-on-rails
app: ruby@2.7
options:
  env:
    - name: RAILS_ENV
      value: development
  install: bundle install
  ports: 3000
  start: rails s -b 0.0.0.0 -p 3000
context:
  git:
    url: https://github.com/cloudtype-examples/ruby-on-rails.git
    branch: main
  preset: ruby-rails
```

### 3. 배포하기

```sh theme={null}
$ ctype apply
```

## 참고

### FAQ

* [서비스 접속 시 50X 페이지만 뜹니다.](/ko/troubleshooting/common)
* [하나의 Git 원격 저장소에서 두 개 이상의 앱을 배포하고 싶어요.](/ko/troubleshooting/git)

### 공식문서

* [Ruby on Rails Docs](https://guides.rubyonrails.org/)
