logologo
시작
가이드
개발
플러그인
API
홈
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
시작
가이드
개발
플러그인
API
홈
logologo
멀티 워크스페이스
Next Page멀티 워크스페이스
AI 번역 알림

이 문서는 AI에 의해 번역되었습니다. 정확한 정보는 영어 버전을 참조하세요.

#다중 애플리케이션

Multi-app 매니저 (폐기됨)Community Edition+

#소개

**다중 애플리케이션 플러그인(Multi-App)**은 별도의 배포 없이 여러 개의 독립적인 애플리케이션을 동적으로 생성하고 관리할 수 있게 해줍니다. 각 하위 애플리케이션은 자체 데이터베이스, 플러그인 및 설정을 가진 완전히 독립된 인스턴스입니다.

#활용 사례

  • 멀티 테넌시(Multi-tenancy): 각 고객이 자신만의 데이터, 플러그인 설정 및 권한 체계를 갖는 독립적인 애플리케이션 인스턴스를 제공합니다.
  • 서로 다른 비즈니스 영역의 메인 및 서브 시스템: 하나의 대규모 시스템을 독립적으로 배포된 여러 개의 소규모 애플리케이션으로 구성합니다.
WARNING

다중 애플리케이션 플러그인 자체는 사용자 공유 기능을 제공하지 않습니다.
여러 애플리케이션 간의 사용자 통합이 필요한 경우, **인증 플러그인**과 함께 사용할 수 있습니다.

#설치

플러그인 관리자에서 다중 애플리케이션(Multi-app) 플러그인을 찾아 활성화합니다.

#사용 설명서

#하위 애플리케이션 생성

시스템 설정 메뉴에서 「다중 애플리케이션」을 클릭하여 관리 페이지로 이동합니다.

「새로 추가」 버튼을 클릭하여 새로운 하위 애플리케이션을 생성합니다.

#양식 필드 설명

  • 이름: 하위 애플리케이션 식별자, 전역적으로 고유해야 함
  • 표시 이름: 인터페이스에 표시될 하위 애플리케이션의 이름
  • 시작 방식:
    • 첫 방문 시 시작: 사용자가 URL을 통해 해당 하위 애플리케이션에 처음 접속할 때 시작됩니다.
    • 메인 애플리케이션과 함께 시작: 메인 애플리케이션이 시작될 때 하위 애플리케이션도 동시에 시작됩니다(메인 애플리케이션의 시작 시간이 늘어날 수 있습니다).
  • 포트: 하위 애플리케이션 실행 시 사용하는 포트 번호
  • 사용자 정의 도메인: 하위 애플리케이션을 위한 독립적인 서브 도메인을 설정합니다.
  • 메뉴에 고정: 하위 애플리케이션 바로가기를 상단 탐색바 왼쪽에 고정하여 표시합니다.
  • 데이터베이스 연결: 하위 애플리케이션의 데이터 소스를 설정하며, 다음 세 가지 방식을 지원합니다.
    • 새 데이터베이스: 현재 데이터 서비스를 재사용하여 독립적인 데이터베이스를 생성합니다.
    • 새 데이터 연결: 완전히 새로운 데이터베이스 서비스를 설정합니다.
    • 스키마(Schema) 모드: PostgreSQL에서 하위 애플리케이션을 위한 독립적인 스키마를 생성합니다.
  • 업그레이드: 연결된 데이터베이스에 이전 버전의 NocoBase 데이터 구조가 존재하는 경우, 현재 버전으로 자동 업그레이드합니다.

#하위 애플리케이션 실행 및 중지

시작 버튼을 클릭하여 하위 애플리케이션을 실행할 수 있습니다.

생성 시 *“첫 방문 시 시작”*을 선택한 경우, 처음 접속할 때 자동으로 시작됩니다.

보기 버튼을 클릭하면 새 탭에서 해당 하위 애플리케이션이 열립니다.

#하위 애플리케이션 실행 상태 및 로그

목록에서 각 애플리케이션이 점유 중인 메모리와 CPU를 확인할 수 있습니다.

로그 버튼을 클릭하여 하위 애플리케이션의 실행 로그를 확인할 수 있습니다.

하위 애플리케이션 시작 후 접속이 불가능한 경우(데이터베이스 손상 등), 로그를 통해 원인을 파악할 수 있습니다.

#하위 애플리케이션 삭제

삭제 버튼을 클릭하여 하위 애플리케이션을 제거할 수 있습니다.

삭제 시 데이터베이스도 함께 삭제할지 선택할 수 있습니다. 이 작업은 복구할 수 없으므로 신중하게 조작하시기 바랍니다.

#하위 애플리케이션 접속

기본적으로 /_app/:appName/admin/ 경로를 사용하여 하위 애플리케이션에 접속합니다. 예:

http://localhost:13000/_app/a_7zkxoarusnx/admin/

또한, 하위 애플리케이션에 독립적인 서브 도메인을 설정할 수 있습니다. 도메인을 현재 IP로 연결해야 하며, Nginx를 사용하는 경우 Nginx 설정에도 해당 도메인을 추가해야 합니다.

#명령줄(CLI)로 하위 애플리케이션 관리

프로젝트 루트 디렉토리에서 PM2를 사용하여 명령줄로 하위 애플리케이션 인스턴스를 관리할 수 있습니다.

yarn nocobase pm2 list              # 현재 실행 중인 인스턴스 목록 확인
yarn nocobase pm2 stop [appname]    # 특정 하위 애플리케이션 프로세스 중지
yarn nocobase pm2 delete [appname]  # 특정 하위 애플리케이션 프로세스 삭제
yarn nocobase pm2 kill              # 모든 시작된 프로세스 강제 종료 (메인 애플리케이션 인스턴스가 포함될 수 있음)

#이전 버전 다중 애플리케이션 데이터 마이그레이션

이전 버전의 다중 애플리케이션 관리 페이지로 이동하여 새 다중 애플리케이션으로 데이터 마이그레이션 버튼을 클릭해 데이터를 이전합니다.

#자주 묻는 질문 (FAQ)

#1. 플러그인 관리

하위 애플리케이션에서 사용할 수 있는 플러그인은 메인 애플리케이션과 동일(버전 포함)하지만, 플러그인 설정 및 사용은 독립적으로 가능합니다.

#2. 데이터베이스 격리

하위 애플리케이션은 독립적인 데이터베이스를 구성할 수 있습니다. 애플리케이션 간에 데이터를 공유하고 싶은 경우, 외부 데이터 소스를 통해 구현할 수 있습니다.

#3. 데이터 백업 및 마이그레이션

현재 메인 애플리케이션의 데이터 백업은 하위 애플리케이션의 데이터를 포함하지 않으며(하위 애플리케이션의 기본 정보만 포함), 각 하위 애플리케이션 내에서 수동으로 백업 및 마이그레이션을 진행해야 합니다.

#4. 배포 및 업데이트

하위 애플리케이션의 버전은 메인 애플리케이션의 업그레이드를 자동으로 따르며, 메인과 하위 애플리케이션 간의 버전 일관성이 자동으로 유지됩니다.

#5. 리소스 관리

각 하위 애플리케이션의 리소스 점유율은 메인 애플리케이션과 거의 동일하며, 현재 단일 애플리케이션의 메모리 점유율은 약 500-600MB 내외입니다.