# Discourse의 기술 아키텍처에 대한 질문

**URL:** <https://meta.discourse.org/t/questions-about-the-technical-architecture-of-discourse/277308>\
**Category:** Development\
**Created:** [8월 31, 2023, 8:17오전 UTC](https://meta.discourse.org/t/questions-about-the-technical-architecture-of-discourse/277308 "2023-08-31T08:17:34Z")\
**Posts on this page:** 1\
**Showing post:** 16

<div class="post-metadata">

**Author:** ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)\
**Post date:** [9월 10, 2023, 2:33오후 UTC](https://meta.discourse.org/t/questions-about-the-technical-architecture-of-discourse/277308/16 "2023-09-10T14:33:07Z")

</div>

> [@51mon](#):
>
> 또한 앱이 다시 빌드되어야 한다고 말씀하셨죠. 링크 편집 과정인가요?

기존의 포럼 플랫폼(vBulletin, phpBB)과 달리 Discourse는 평탄한 서버 측 스크립트(PHP)와 독립된 데이터베이스의 집합이 아닙니다.

Discourse는 두 부분으로 구성됩니다: Docker에 존재하는 백엔드와 클라이언트 기기에 전달되는 단일 페이지 JavaScript 애플리케이션입니다.

백엔드 변경이 필요한 모든 작업은 Docker 컨테이너에 영향을 미치며, 가장 기본적인 설치 환경에서도 소량의 다운타임이 필요합니다. 사람들이 "앱이 다시 빌드되어야 한다"고 말할 때를 의미하는 것이 바로 이것입니다. 컨테이너 빌드 방식을 제어하는 설정 파일(YML 문서)을 편집한 후, SSH를 통해 launcher에 재빌드를 지시해야 합니다. 플러그인 설치에는 재빌드가 필요하지만, SMTP와 같은 단순한 변경 사항은 재시작에 더 가깝습니다.

새로운 테마 및 테마 컴포넌트를 도입하는 것은 기본적으로 실행 중인 웹 애플리케이션 내에서 수행되는 프론트엔드 변경입니다. 기본 애플리케이션과 데이터베이스가 실질적으로 변경되지 않기 때문에 다운타임이 발생하지 않습니다.

---

_[View the full topic](https://meta.discourse.org/t/questions-about-the-technical-architecture-of-discourse/277308)._
