sbx ports — 샌드박스 포트 공개 관리

sbx ports — 샌드박스 포트 공개 관리

sandbox의 하위 명령인 sbx ports는 샌드박스 포트 공개(publishing)를 관리해요. 샌드박스 포트를 나열·공개·공개 해제할 수 있어요.

출처: 문서

본문

설명 (Description)

샌드박스 포트 공개를 관리해요.

샌드박스 포트를 나열·공개·공개 해제해요. 로컬 포트를 공개하면 호스트 바인딩을 만들기 전에 중지된 샌드박스를 시작해요. --publish 또는 --unpublish 플래그가 없으면 공개된 모든 포트를 나열해요.

포트 사양 형식: [[HOST_IP:]HOST_PORT:]SANDBOX_PORT[/PROTOCOL]

  • HOST_PORT를 생략하면 임시(ephemeral) 포트가 자동으로 할당돼요.
  • HOST_IP를 생략하면 포트가 루프백에 바인딩되며, PROTOCOL과 샌드박스의 주소 패밀리에 따라 확장돼요: tcp/udp는 127.0.0.1과 ::1 둘 다에 바인딩(tcp/udp는 IPv4 전용 샌드박스면 127.0.0.1만); tcp4/udp4는 127.0.0.1만; tcp6/udp6::1만.
  • 지원 프로토콜: tcp, tcp4, tcp6, udp, udp4, udp6.

PROTOCOL 없이 공개하면 tcp4가 사용돼요 — 그래서 IPv4에서만 듣는 샌드박스 서비스가 호스트 클라이언트가 ::1을 피하지 않아도 도달 가능해요 — HOST_IP가 IPv6 주소면 tcp6이 사용돼요. tcp를 명시하면 두 패밀리 모두에 바인딩해요.

PROTOCOL 없이 공개 해제하면 같은 기본값 또는 dual-stack tcp로 공개했든 매핑이 제거돼요. tcp6 또는 udp 매핑을 제거하려면 프로토콜을 명시해요. 남은 것은 보고돼요.

--cloud 사용 시: 클라우드 샌드박스의 노출된 포트를 관리해요.

ID(sbx_*) 또는 이름으로 주어지는 클라우드 샌드박스의 포트를 나열·공개·공개 해제해요. --publish/--unpublish 플래그가 없으면 노출된 포트를 나열해요.

포트는 샌드박스 포트 번호만 또는 /tcp 접미사가 붙은 값이에요. UDP와 호스트 바인딩은 거부돼요. 클라우드 컨트롤 플레인이 노출된 각 포트에 공개적으로 도달 가능한 URL을 할당해요.

옵션 (Options)

| 옵션 | 기본값 | 설명 | | --json | | JSON 형식으로 출력 (포트 나열용) | | --publish | | 포트 공개 (반복 가능): [[HOST_IP:]HOST_PORT:]SANDBOX_PORT[/PROTOCOL] (로컬) 또는 SANDBOX_PORT[/tcp] (클라우드) | | --unpublish | | 포트 공개 해제 (반복 가능): [HOST_IP:]HOST_PORT:SANDBOX_PORT[/PROTOCOL] (로컬) 또는 SANDBOX_PORT[/tcp] (클라우드) |

전역 옵션 (Global options)

| 옵션 | 기본값 | 설명 | | --cloud | | 로컬 sandboxd 대신 Docker Cloud Sandboxes API로 디스패치 (점점 더 많은 동사 지원 — 현재 목록은 'sbx --cloud --help' 실행) | | -D, --debug | | 디버그 로깅 활성화 |

예시 (Examples)

# 공개된 포트 나열
sbx ports my-sandbox

# 샌드박스 포트 8080을 임시 호스트 포트로 공개
sbx ports my-sandbox --publish 8080

# 특정 호스트 포트로 공개
sbx ports my-sandbox --publish 3000:8080

# 포트 공개 해제
sbx ports my-sandbox --unpublish 3000:8080

# 클라우드 샌드박스에 포트 8080 노출
sbx --cloud ports sbx_abc123 --publish 8080

# 클라우드 샌드박스에서 노출된 포트 제거
sbx --cloud ports sbx_abc123 --unpublish 8080

더 알아보기 (Learn more)

  • 샌드박스 시작 시 포트 공개는 sbx run --publish을 참고해요.