JelinaOS에서는 모든 애플리케이션(컨테이너와 네이티브)을 Release 체계로 통합 관리합니다. 애플리케이션을 Release에서 정의하여 장치에 배포하면 장치 에이전트가 다운로드, 설치와 실행 감독을 담당합니다. 클라우드 플랫폼과 긴밀하게 연동하여 애플리케이션 관리를 “장치별 작업”에서 “한 번 게시하여 일괄 적용”으로 발전시킵니다.
두 가지 애플리케이션 형태
섹션 제목: “두 가지 애플리케이션 형태”| 구분 | 컨테이너 애플리케이션 | 네이티브 애플리케이션(ProgramSet) |
|---|---|---|
| 배포 형태 | 컨테이너 이미지 | 프로그램 패키지 / 스크립트 / 바이너리 |
| 실행 방식 | 컨테이너 런타임 | 시스템 서비스 |
| 적합한 시나리오 | 현대적인 애플리케이션, 다중 서비스 조합, 빠른 반복 개발 | 기존 프로그램, 심층 하드웨어 맞춤 구성, 실시간 제어 |
두 형태는 Release 체계에서 동등하게 처리됩니다. 같은 Release에 정의하고 동일한 배포 흐름을 사용하며 일관된 실행 감독과 업데이트 기능을 제공합니다.
애플리케이션 수명 주기(Release 기반)
섹션 제목: “애플리케이션 수명 주기(Release 기반)”Release 생성(컨테이너 애플리케이션/네이티브 프로그램 정의) │ ▼플릿/장치에 배포 │ ▼장치 에이전트가 목표 상태 동기화 ──▶ 가져오기 및 설치 ──▶ 실행 및 감시 │ │ │ ▼ └───────── 버전 업데이트/롤백 ◀────── 오류 자동 복구| 단계 | 설명 |
|---|---|
| 정의 | Release에 컨테이너 이미지 또는 네이티브 프로그램을 선언하고 환경, 포트, 의존성과 재시작 정책 구성 |
| 배포 | 대상 플릿 또는 장치에 Release를 배포하면 장치 에이전트가 자동 적용 |
| 실행 | 장치 에이전트가 애플리케이션을 감독하며 비정상 종료 시 자동 재시작, 부팅 시 자동 시작 |
| 업데이트 | 새 버전을 게시·배포하면 장치가 자동 업그레이드. 문제 발생 시 롤백 가능 |
클라우드 Release(권장)
섹션 제목: “클라우드 Release(권장)”JelinaCloud에 연결한 뒤 클라우드에서 Release를 생성하고 배포합니다.
- 컨테이너 애플리케이션: 이미지와 실행 구성을 지정합니다.
- 네이티브 애플리케이션: 프로그램 구성(ProgramSet)을 선언합니다.
- 증분 조정, 버전 전환과 롤백을 지원합니다.
자세한 절차는 클라우드 애플리케이션 배포와 OTA를 참조하세요.
로컬 관리
섹션 제목: “로컬 관리”클라우드에 연결하지 않을 때는 장치 로컬 관리 인터페이스로 대상 구성을 전달하고 장치 에이전트가 배포합니다. 로컬 모드도 “구성 선언 → 장치 에이전트 실행” 모델을 따르므로 수동 명령에 의존하여 애플리케이션 실행을 유지하지 않습니다.
장치의 애플리케이션 조회
섹션 제목: “장치의 애플리케이션 조회”배포 후 장치 명령으로 애플리케이션 실행 상태를 확인할 수 있습니다. Docker 명령은 조회·진단용이며 배포 진입점으로 사용하지 않습니다.
docker ps # 컨테이너 애플리케이션 실행 상태 확인systemctl list-units 'jelinvisored_*' # 네이티브 프로그램 서비스 확인시작할 위치
섹션 제목: “시작할 위치”- 첫 애플리케이션 배포 — Release를 통한 최초 배포
- 클라우드 애플리케이션 배포와 OTA — Release와 업데이트의 전체 절차
- 네이티브 애플리케이션과 ProgramSet — 네이티브 애플리케이션의 Release 구성