# Ruby on Rails

### 1. 개요

> Ruby on Rails는 Ruby를 사용하고 MVC 패턴을 이용하는 오픈 소스 웹 프레임워크입니다. \
> 애자일 환경에 적합하여 생산성이 매우 높고, Ruby를 모르더라도 웹 강좌를 보고 금방 이해하고 \
> 블로그를 개발 할 수 있을 정도로 쉽고 빠르게 사용 가능합니다.

AppPaaS에서는 Ruby 3.3.2 와 Rails 7.1.3을 지원합니다.

{% hint style="warning" %}
AppPaaS는 Ruby 버전 3.3.2 이상 지원합니다. \
Ruby 언어 버전에 따라 빌드 시 오류가 발생할 수 있기에 3.3.2 이상 사용을 권장합니다.
{% endhint %}

### 2. 서비스 환경설정

<figure><img src="/files/o1C54yGsvjxqe8P2d1YW" alt=""><figcaption></figcaption></figure>

* **내부 포트**\
  서비스가 배포된 후 리슨되는 포트를 의미합니다. \
  3000 포트가 사용되며 소스 내에서 해당 포트를 변경했을 경우 변경한 값을 입력해 주어야 합니다.\
  AppPaaS Beta에서는 해당 포트를 기반으로 TCP 헬스체크를 합니다.<br>
* **외부 포트, 외부 포트 공개 여부**\
  서비스를 퍼블릭으로 오픈할지 여부를 결정하는 설정입니다. \
  기본으로 443, 오픈으로 설정되어 있으며 오픈 설정 시 외부 도메인이 할당되어 \
  https\://{할당된 주소}를 통해 외부에서 접근할 수 있습니다. \
  비공개로 설정할 경우 외부에서 접근이 불가능하며 내부 도메인 주소로 서비스 간 통신만 지원됩니다.<br>
* **자동 배포 설정**\
  자동 배포를 설정하면 리포지터리의 선택한 브랜치에 변경이 생길 경우 \
  변경에 대한 훅을 받아 자동으로 빌드 및 배포가 진행됩니다.

### 3. 고급  환경설정

***

* **환경 변수**\
  Key/Value 형태로 입력되며 입력된 값은 컨테이너 OS의 환경 변수로 주입됩니다.\
  주입된 환경 변수는 코드 내에서 process.env을 통해 접근하여 사용할 수 있습니다.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.apppaas.com/start/framework/ruby-on-rails.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
