로컬과 클라우드 샌드박스 비교
로컬과 클라우드 샌드박스 비교 (Compare local and cloud sandboxes)
로컬 샌드박스와 클라우드 샌드박스의 차이를 비교해 볼게요.
출처: 문서
본문
로컬과 클라우드 샌드박스는 AI 에이전트에 격리된 환경을 제공하지만, 서로 다른 리소스와 저장소에 대해 실행돼요. 이 비교는 환경을 선택하고 클라우드 전용 설정이 필요한 워크플로를 식별하는 데 도움을 줘요.
| 기능 (Capability) | 로컬 샌드박스 | 클라우드 샌드박스 |
|---|---|---|
| 컴퓨트 (Compute) | 호스트의 리소스 사용 | Docker 관리 클라우드 리소스 사용 |
| CPU 아키텍처 | 로컬 런타임이 지원하는 플랫폼 사용 | linux/amd64와 linux/arm64 지원(계정 가용성에 따름); 이동은 원본 플랫폼을 유지해야 함 |
| 워크스페이스 | 호스트 경로 마운트 또는 호스트 저장소 기반 개인 Git 클론 사용 | 호스트 경로 접근 없음; 샌드박스 안에서 파일 전송 또는 저장소 클론 |
| 하드웨어 | GPU, USB, 디스플레이, 중첩 가상화 같은 지원되는 호스트 통합 사용 | 호스트 하드웨어 접근 없음 |
| 포트 | 샌드박스 포트를 호스트 주소·포트에 바인딩 | 공개 HTTPS URL로 샌드박스 포트 노출 |
| 시크릿 | 로컬 sbx 시크릿 저장소에서 읽음 |
별도의 sbx --cloud 시크릿 저장소에서 읽음 |
| 네트워크 정책 | 로컬 런타임이 지원하는 로컬 및 조직 정책 소스 사용 | 별도의 네트워크 전용 계정·샌드박스 정책 사용; 로컬 정책은 복사되지 않음 |
| MCP 서버 | 로컬 MCP 저장소에 등록된 서버 사용 | Docker Agentic Platform으로 연결된 서버 사용 |
| 저장소 | 로컬 샌드박스와 붙은 호스트 리소스에 유지 | 클라우드 샌드박스와 선택적 클라우드 볼륨에 유지 |
| 수명 | 제거할 때까지 멈춤을 거쳐 유지 | TTL과 타임아웃 동작에 따라 만료 |
| 과금 | 측정된 샌드박스 컴퓨트 요금 없음 | 종량제 컴퓨트 |
워크플로가 샌드박스 안에서 Docker를 실행한다면 Docker exec와 healthcheck 제한 문서를 검토하세요. 컨테이너 설정, 디버깅, Compose 서비스 준비 상태(readiness)에 영향을 줄 수 있어요.
호스트 의존 기능 (Host-dependent features)
클라우드 샌드박스는 sbx를 실행하는 머신으로 돌아가는 경로가 없어요. 다음 로컬 기능은 클라우드 모드에서 적용되지 않아요:
- 워크스페이스 경로, 바인드 마운트,
--clone,--branch로 만든 Git 워크트리 - GPU, USB, 디스플레이, 중첩 가상화 옵션
--model과--provider를 통한 모델 선택- 호스트 포트 바인딩
- 호스트 기반 에이전트 스킬과 전체 로컬 MCP 관리 워크플로
CLI는 --cloud와 함께 쓰인 로컬 전용 플래그를 무시하지 않고 거부해요.
sbx --cloud env로 환경 파일(environment files)을 쓸 수 있어요. 클라우드 환경은 에이전트, 환경 변수, 리소스 한도, 자격 증명을 포함한 로컬 설정 필드의 일부를 지원해요. 로컬 환경 파일을 클라우드에서 쓰기 전에 호스트 워크스페이스와 포트 매핑을 제거하세요.
분리된 리소스 (Separate resources)
--cloud를 추가하면 명령의 백엔드가 달라져요. sbx ls가 보여주는 샌드박스는 sbx --cloud ls에 나타나지 않고, 한 백엔드용으로 만든 리소스도 다른 쪽에서 자동으로 쓸 수 없어요.
이 분리는 샌드박스, 템플릿, 시크릿, 볼륨, 네트워크 정책에 적용돼요. 백엔드 간 샌드박스 파일시스템을 복사해야 할 때는 sbx move를 사용하세요. 이동은 리소스 저장소를 통합하거나 호스트 마운트 파일·관리 시크릿을 전송하지 않아요. 복사된 파일에 저장된 자격 증명은 샌드박스와 함께 이동할 수 있어요.
네트워크 정책 차이 (Network policy differences)
클라우드 네트워크 정책은 별도로 구성하고 검증하세요. 샌드박스를 이동해도 그 로컬 정책 구성이 클라우드로 이어지지 않아요. 클라우드 CLI는 계정과 샌드박스 네트워크 규칙을 지원하지만, 로컬 거버넌스(governance) 프로필과 --protocol 옵션은 거부해요.
HTTP 메서드·경로 제한(L7 필터링)은 클라우드 샌드박스에서 지원되지 않아요. 이 규칙이 로컬 샌드박스에 적용된다면, sbx move가 경고하고 클라우드로 옮기기 전에 확인을 요청해요.
이동하면 바뀌는 것 (What changes when you move)
sbx move는 파일시스템 스냅샷을 복사하고 별도의 목적지 샌드박스를 만들어요. 실행 중인 프로세스나 메모리는 전송하지 않고, 원본 샌드박스는 제자리에 남겨요. 이미지 크기와 가용 대역폭에 따라 큰 이미지는 업로드·다운로드에 시간이 걸릴 수 있어요. 클라우드→로컬 이동은 임시 디스크 공간도 필요해요.
| 상태 (State) | 로컬 → 클라우드 | 클라우드 → 로컬 | 무엇을 할까요 |
|---|---|---|---|
| 네트워크 정책 | 로컬 규칙이 복사되지 않고, CLI가 클라우드 정책이 적용된다고 경고 | 클라우드 규칙이 복사되지 않고, CLI가 호스트 기본 이그레스 정책이 적용된다고 안내 | 목적지 규칙을 구성하고 작업을 계속하기 전에 허용·차단 연결을 검증 |
| 관리 시크릿 | 클라우드 시크릿 저장소의 적용 자격 증명 사용 | 로컬 시크릿 저장소의 적용 자격 증명 사용 | 목적지 저장소에 자격 증명을 구성; CLI가 시크릿은 복사되지 않고 다시 로그인해야 할 수 있다고 경고 |
| 워크스페이스와 붙은 저장소 | 호스트 마운트와 clone-mode 볼륨이 복사되지 않고, 워크스페이스는 경고·확인 유발 | 클라우드 볼륨이 복사되지 않고 호스트 폴더도 마운트되지 않음 | 필요한 파일을 sbx cp로 별도 전송 |
| 게시된 포트 | TCP 포트가 클라우드 URL을 받고, 거부된 포트는 경고와 함께 건너뜀 | 포트가 로컬 루프백 바인딩 사용; 클라우드 URL은 유지되지 않음 | 목적지 포트를 검사하고 클라이언트를 업데이트 |
| CPU와 메모리 | 기록된 원본 한도를 지원되는 클라우드 크기로 올림 반올림; 누락 한도는 경고와 함께 기본값 사용 | 로컬 기본값 사용 | 목적지 리소스와 워크로드 성능 확인; sbx move는 CPU·메모리 오버라이드 플래그 없음 |
| CPU 아키텍처 | 클라우드 접근이 원본 플랫폼을 지원해야 함 | 로컬 런타임이 원본 플랫폼을 지원해야 함 | 플랫폼을 일치시킴; CLI가 전송 전 호환성을 확인 |
관리 시크릿 경고는 그 자체로 이동을 막지는 않아요. 필요로 하는 에이전트를 쓰기 전에 클라우드 자격 증명 또는 로컬 자격 증명을 구성하세요. 샌드박스 안 파일에 쓰인 자격 증명은 스냅샷에 포함될 수 있어요. 복사를 원하지 않으면 이동 전에 그 파일들을 제거하세요.
클라우드→로컬 이동은 안내를 표시하고 확인을 요청해요. 로컬→클라우드 이동은 워크스페이스 파일이나 L7 필터링이 남게 되면 확인을 요청해요. 확인이 필요하고 표준 입력이 터미널이 아니라면, --force를 전달하지 않는 한 이동이 실패해요. 이 플래그는 확인을 건너뛰지만 경고는 유지하고 전송 내용은 바꾸지 않아요.
원본을 제거하기 전에 목적지의 파일, 자격 증명, 네트워크 접근, 포트, 만료 설정을 검증하세요.
더 알아보기 (Learn more)
관련 문서와 심화 내용은 원문을 참고해 주세요.