콘텐츠로 이동

SSH 작업 트리

Orca은 SSH를 통해 원격 시스템에서 에이전트를 구동할 수 있습니다. 이는 장기 실행 빌드, GPU 상자 또는 노트북이 작업을 실행하기에 적합하지 않은 모든 환경에 유용합니다.

네 가지 실행 모드 중 하나

SSH는 원격 컴퓨팅 환경에서 에이전트를 실행하는 한 가지 방법입니다. 로컬, 자체 호스팅 서버 및 임시 VM 방식은 Orca 실행 방식을 참조합니다.

SSH 원격 작업공간 — 에이전트는 원격 호스트에서 실행되고 편집기 및 차이점은 로컬로 유지됩니다.

SSH 원격 작업 공간 — 에이전트는 원격 호스트에서 실행되고 편집기와 차이점은 로컬로 유지됩니다.

  1. 설정 → SSH를 엽니다.
  2. 대상(호스트, 사용자, 포트, 선택적 ID 파일)을 추가합니다. Orca는 또한 Include 지시문에서 참조하는 파일을 포함하여 OpenSSH 구성 파일에서 호스트를 가져옵니다.
  3. 키가 암호로 보호된 경우 Orca가 처음으로 메시지를 표시합니다.
  4. Test(테스트)를 클릭하여 연결을 확인합니다.

작업 트리를 생성할 때 로컬 대신 SSH 대상을 선택합니다. Orca은 다음을 수행합니다.

  • 원격 호스트에 git 작업 트리를 만듭니다.
  • SSH 연결을 통해 원격으로 에이전트를 실행합니다.
  • 편집기, 차이점 및 브라우저가 여전히 로컬처럼 느껴지도록 파일 이벤트를 동기화합니다.

Settings → SSH(설정 → SSH)를 열고, 대상을 편집하고, 호스트에 프록시, 점프 호스트 또는 SSH 멀티플렉싱 재정의가 필요한 경우 Advanced Connection(고급 연결)을 확장합니다. Orca은 기본적으로 Reuse SSH connection for faster setup(더 빠른 설정을 위해 SSH 연결 재사용)을 활성화합니다. 이는 macOS 및 Linux에서 OpenSSH 연결 재사용을 사용하므로 설정 명령이 각각 새로운 SSH 핸드셰이크를 지불하지 않습니다. SSH 정책이 멀티플렉싱 세션을 거부하는 호스트에 대해서만 이 기능을 끄십시오.

암호는 Orca 세션이 지속되는 동안 메모리에 보관됩니다. Orca를 닫으면 해당 내용이 지워집니다. SSH 설정에서 더 긴 TTL을 선택할 수 있습니다.

원격 작업 트리에는 실시간 SSH 상태(녹색 연결됨, 노란색 재연결 중, 빨간색 연결 끊김)가 포함된 칩이 표시됩니다. 연결 끊김은 실행 중인 에이전트를 종료하지 않습니다. Orca은 다시 연결하고 다시 연결합니다. 에이전트 상태(작업 중/유휴/차단됨)는 로컬에서와 동일한 방식으로 SSH를 통해 전파되므로 사이드바 및 에이전트 피드에 원격 에이전트가 실시간으로 반영됩니다.

데스크톱 앱을 닫아도 더 이상 원격 PTY 세션이 종료되지 않습니다. 원격 터미널 세션은 원격 호스트에서 실행되는 릴레이를 통해 임대되므로 랩톱에서 Orca을 종료해도 유지됩니다. 앱을 다시 열고 대상에 다시 연결하면 임대된 PTY가 스크롤백이 그대로 유지된 상태로 attached(연결됨) 상태로 해당 탭에 복원됩니다. 짧은 유예 기간(기본적으로 5분, 대상별로 구성 가능)은 분리된 세션을 해제하기 전에 빠른 재연결을 완료할 수 있는 릴레이 시간을 제공합니다.

SSH 작업 트리의 파일 탐색기에서 파일을 마우스 오른쪽 버튼으로 클릭하고 Download(다운로드)를 선택하여 노트북에 복사합니다. Orca은 기본 저장 대화 상자를 열어 저장 위치를 ​​선택할 수 있도록 합니다. 이는 데스크톱 전용 작업입니다. 웹 클라이언트는 Electron의 저장 대화 상자에 의존하기 때문에 다운로드를 노출하지 않습니다.

SSH 대상이 시스템 SSH를 사용하는 경우 Orca은 별도의 동기화 도구 없이 동일한 공급자를 통해 파일을 전송합니다. 다운로드는 파일에만 사용할 수 있으므로 디렉터리는 먼저 압축하거나 터미널에서 복사해야 합니다.

원격 작업 트리의 경우 오른쪽 사이드바에 Ports(포트) 탭이 표시됩니다(Cmd+Shift+I로 전환). Orca는 원격에서 /proc/net/tcp을 검색하고 Detected(감지됨) 아래에 수신 대기 포트를 나열합니다. 한 번의 클릭으로 해당 포트를 노트북으로 전달합니다. 수동으로 전달을 추가하거나 편집하거나 제거할 수도 있습니다. 전달은 앱을 다시 시작하고 SSH를 다시 ​​연결해도 지속되며 권한 있는 원격 포트는 로컬에서 자동으로 다시 매핑됩니다(예: 원격 80 → 로컬 10080).