Neat SDK 네트워크 설정
Neat SDK는 Neat 개발 환경이라고도 하며, Docker 컨테이너 내에서 실행됩니다. sima-cli sdk setup은 컨테이너를 생성하고, 호스트 작업 공간 마운트를 준비하며, 활성화된 경우 Insight를 시작하고, 호스트 브라우저와 DevKit가 개발 중에 사용하는 컨테이너 포트를 게시합니다.
이 가이드에서는 Modalix DevKit와 함께 SDK를 사용할 때 가장 중요한 네트워크 구성 요소에 대해 설명합니다.
네트워크 모델
일반적인 SDK 설정에는 세 가지 요소가 있습니다.
- 호스트 컴퓨터: Docker와
sima-cli, SDK 컨테이너, 그리고 사용자의 브라우저를 실행합니다. - SDK 컨테이너: Neat 개발 환경과 선택 사항인 Insight 서비스를 실행합니다.
- DevKit: 로컬 네트워크 또는 직접 이더넷/공유 네트워크 연결을 통해 호스트에 연결됩니다.
지원되는 SDK 컨테이너 네트워크는 simasdkbridge입니다. DevKit 및 Insight 네트워킹이 필요한 경우 Docker 또는 VS Code Dev Containers 확장 프로그램을 통해 SDK 컨테이너를 직접 시작하지 마십시오. 대신 sima-cli sdk setup을 사용하여 컨테이너, 포트 매핑, 작업 공간 공유 및 Insight 구성이 함께 생성되도록 합니다.
어떤 설정으로 구성되어 있습니까?
DevKit 통합을 사용하여 설정을 실행하면, sima-cli가 다음을 구성합니다.
- Docker 네트워크:
simasdkbridge를 생 성하거나 재사용합니다. - SDK 컨테이너 포트: 호스트에 Insight UI, 비디오, RTSP, 메타데이터, WebRTC 및 웹 SSH 포트를 게시합니다.
- Insight 포트 매핑: 생성된 포트 매핑을 SDK 작업 공간 구성에 기록합니다.
- 작업 공간 공유:
--devkit를 사용할 때 호스트에서 DevKit 작업 공간에 대한 접근 권한을 설정합니다. - 로컬 컨테이너 레지스트리: SDK 3.0 이상에서는 SDK에서 빌드한 이미지를 호스트에 저장하고, 루프백과 DevKit 방향 네트워크 경로에만 레지스트리를 공개하며, DevKit이 이미지를 다운로드할 수 있도록 설정합니다.
- DevKit 인터넷 접속: DevKit를 호스트의 공유 네트워크 링크를 통해 연결하여, 필요할 때 DevKit가 패키지 저장소에 접근하고 종속성을 다운로드할 수 있도록 합니다.
- Linux 공유 네트워크 라우팅: Ubuntu의 Linux 공유 네트워크 링크에서 필요에 따라 범위가 지정된 전달/NAT 규칙을 적용합니다.
사용법:
sima-cli sdk setup --devkit <devkit-ip>