1. 고통 분해: 잘못된 네임스페이스의 컬은 당신에게 있습니다.
(1) WS 루프백 혼란: ws://127.0.0.1:18789에 옳습니다주인포트가 게시될 때 내부적으로다른 컨테이너그것은 그 자체로 반복됩니다. 게이트웨이가 서비스 이름을 수신하는 경우openclaw-gateway, 하드 코딩된 127.0.0.1은 절대 도달하지 않습니다.(2) 페어링 vs 토큰: pairing required은인증 세션문제;token mismatch는비밀 불일치; 그것들을 혼합하면 무작위 편집이 생성됩니다.(3) 환경이 파일을 재정의합니다.: 싱글OPENCLAW_GATEWAY_TOKENCompose의 행은 마운트된 것을 재정의할 수 있습니다.gateway.auth.token, "JSON을 변경했지만 아무것도 이동되지 않았습니다."가 생성됩니다.(4) 원격 Mac 듀얼 스택: 동일한 포트 선언 또는 동일한 상태 디렉터리를 공유하는 launchd와 compose는 간헐적으로 자동 오류를 발생시킵니다.
2. 증상 매트릭스: 인증 전 채널 분류 전송
| 신호 | 가설 | 첫 번째 조치 |
|---|---|---|
1006/ 재설정 |
잘못된 호스트 또는 포트 충돌 | 에서CLI와 동일한 네트워크 네임스페이스, 달리다nc -vz host port |
1008 pairing required |
페어링이 완료되지 않았습니다. | 제어 UI 열기, 페어링 코드 발행, CLI pair 명령 실행 |
token mismatch |
진실의 이중 소스 | CLI 컨테이너 내부에 env를 인쇄합니다. 볼륨 JSON으로 조정 |
| 불안정한 성공 | 상태에서 경주하는 두 인스턴스 | docker ps플러스 볼륨 테이블; 하나의 게이트웨이로 축소 |
3. 5단계 실행서: 핑부터 성공적인 채널 조사까지
- 네임스페이스 고정: CLI가 호스트, 사이드카 또는 CI 실행기에서 실행되는지 여부를 문서화합니다. 클라이언트에서 리스너로 하나의 화살표를 그립니다.
- 명시적 게이트웨이 기반: 세트
OPENCLAW_GATEWAY_URL(또는 문서화된 이에 상응하는 항목)openclaw-gateway:18789또는 게시된 호스트 포트 - 네임스페이스 전체에서 127.0.0.1을 가정하지 마십시오. - 페어링 게이트: 비즈니스 채널을 테스트하기 전에 페어링을 완료하세요. "페어링되지 않은" 대 "잘못된 토큰"에 대한 두 개의 티켓 템플릿을 유지하세요.
- 단일 토큰 정보 소스: env 또는 파일을 표준으로 선택합니다. 다른 하나를 일치시키거나 제거합니다.
- 채널 프로브로 승인: 동일한 환경에서 성공적인 프로브 하나를 실행하고 로그와 작성 조각을 변경 요청에 첨부합니다.
4. network_mode: "service:openclaw-gateway"가 정당화되는 경우
CLI가 기본 브리지 아래에서 불안정한 DNS를 방지하기 위해 게이트웨이 네트워크 네임스페이스를 공유해야 하는 경우 이를 사용합니다. 비용으로 인해 로컬 호스트 의미가 혼란스러워집니다. 다이어그램을 작성해 보세요. 대안: 호스트에 CLI를 유지하고 WS가 게시된 호스트 포트를 가리키도록 하여 역방향 프록시에서 TLS 종료를 정렬합니다.
5. 인용 가능한 임계값(측정값으로 대체)
토론 수준 수치:
- CLI 네임스페이스의 TCP 연결 성공이 100개 이상의 프로브에서 97% 미만인 경우 기능 작업을 중단하고 DNS, 서비스 이름 또는 게시된 포트를 수정하세요. 먼저.
- 단일 페어링 창 내에서 3개
token mismatch개 이상의 이벤트가 표시되면 입증될 때까지 이중 소스를 가정합니다. - 공유 상태 디렉터리의 잠금 대기가 원격 Mac의 p95에서 2.5초를 초과하는 경우, 볼륨을 분할하거나 CLI를 전용 사이드카로 이동합니다.
6. 3개 계층에서 openclaw 로그 읽기
먼저 전송 회선을 필터링한 다음 인증 및 페어링, 채널별 회선을 필터링합니다. 설명만 첨부하는 대신 티켓에 스크린샷 3개를 첨부하세요. 공식 install.sh 기사와 함께 읽을 때 설치 순서와 네트워크 정렬을 두 개의 별도 승인 게이트로 취급하십시오.
| 계층 | 질문 | 통과 예 |
|---|---|---|
| L1 전송 | WS 핸드셰이크가 성공했습니까? | 설명할 수 없는 것이 없습니다. 1006/1008 |
| L2 인증 | 토큰과 페어링이 일관됩니까? | 페어링 후 무단 루프가 없습니다 |
| L3 채널 | 채널이 온라인인가요? | channels probe 해석 가능한 상태를 반환합니다 |
7. 원격 Mac: 포트 및 볼륨에 대한 실행 대 Docker
포트 18789를 소유한 사람, 상태가 바인드 마운트인지 명명된 볼륨인지, 업그레이드 중에 어떤 장치가 먼저 중지되는지 문서화합니다. SSH와 VNC 가이드를 함께 사용하면 대화형 VNC 편집을 무인 작성 롤에서 분리할 수 있습니다.
8. FAQ
extra_hosts가 모든 것을 고칠까요? 가끔 근본 원인이 이중 토큰 소스인 경우 extra_hosts는 오류 모드만 다시 섞습니다.
게이트웨이를 0.0.0.0에 바인딩합니까? 먼저 공격 표면 기사를 읽어보세요. 공개 노출은 기본 답변이 아닙니다.
install.sh 흐름과 충돌합니까? 아니요—install.sh는 기본 순서를 설정합니다. 이 문서에서는 Docker 네트워킹 및 인증 정렬에 중점을 둡니다.
9. 사례 연구: 로그에 수신 대기, CLI 여전히 1008
라고 표시되는 빈번한 2026 실패 모드는 개발자가 ws://127.0.0.1을 사용하여 컨테이너 B에서 CLI를 실행하는 동안 컨테이너 A에서 수신 대기하는 게이트웨이입니다. 서류상으로는 분명하지만 다중 저장소 설정에서는 비용이 많이 듭니다. README 상단에 "namespace that running openclaw" 문장을 넣고 러너 컨테이너에서 프로브를 실행하는 CI 스모크를 추가합니다.
두 번째 클래스는 재정의 파일에서 OPENCLAW_GATEWAY_TOKEN 행을 잊어버립니다. 환경 또는 파일 규칙을 선택하고 토큰 환경 차이에 대한 PR 체크리스트 항목을 추가하십시오.
Time Machine 또는 동기화 소프트웨어가 상태 디렉토리를 미러링하여 고스트 2차 게이트웨이를 생성할 때 세 번째 클래스가 원격 Mac에 도달합니다. 상태 디렉터리를 동기화되지 않은 것으로 표시하거나 전용 원격 노드에 통합합니다.
마이그레이션 문서를 결합하여 "재구축 작성" 훈련과 "머신 마이그레이션" 훈련을 분리합니다. 그것들을 섞으면 롤백 이야기가 혼란스러워집니다.
Docker는 자동 단순성이 아닌 더 강력한 제약 조건 하에서 반복 가능한 전달입니다. 프로덕션 준비를 요청하기 전에 작성, 환경 인쇄, NC 출력 및 3계층 로그 조각을 첨부하세요.
10. n8n 및 웹훅 인그레스
n8n이 스택으로 다시 호출할 때 HTTP 수신 소유자는 WS 토큰 소유자와 일치해야 합니다. 고유한 제목을 사용하여 WS 1008 티켓에서 HTTP 502 조사를 분할합니다.
11. 업그레이드 원칙: 단일 게이트웨이 우선
릴리스가 중단되는 동안 HA를 다시 활성화하기 전에 하나의 게이트웨이와 하나의 CLI로 축소하십시오. 절반만 업그레이드된 볼륨은 절반만 일관된 스키마를 생성합니다. 변경 기록에 의사 출력을 첨부합니다.
12. 종료: Docker는 반복성을 입증하고 원격 Mac은 SLO를 전달합니다.
(1) 한도: CLI 네임스페이스를 문서화하지 않으면 Docker 문제 해결이 기하급수적으로 늘어납니다. 이중 토큰 소스를 사용하면 구성 편집이 무작위로 느껴집니다.
(2) 원격 Mac 풀이 도움이 되는 이유: 전용 호스트는 개발자 랩톱에서 작성 버전, 볼륨 및 상태 확인을 고정합니다.
(3) MACGPU 적합: 노트북 서버 대신 정렬된 원격 Mac 게이트웨이의 마찰이 적은 시험을 원하는 경우 MACGPU는 임대 가능한 노드와 공개 도움말 진입점을 제공합니다. 아래 CTA는 로그인 없이 계획에 연결됩니다.
(4) 최종 게이트: 성공적인 승인 없이는 생산 준비가 완료되었다고 주장하지 마십시오.channels probe또한 작성/환경/토큰 정렬 증거.
13. 매트릭스 설치 및 install.sh 링크
install.sh가 아직 녹색이 아닌 경우 먼저 해당 문서를 읽어보세요. 녹색이지만 Docker가 실패하는 경우 여기의 L1 매트릭스에서 다시 시작하세요. 3-스택 매트릭스는 CLI가 호스트에 속할지 아니면 사이드카에 속할지 결정하는 데 도움이 됩니다.
14. 관찰 가능성: 구성 프로젝트별로 폭발 반경에 주석을 답니다.
여러 Compose 프로젝트가 호스트를 공유하는 경우 포트 18789를 소유한 프로젝트와 웹훅 수신을 소유한 프로젝트에 라벨을 지정합니다. 통화 중은 Slack 기록을 수집하는 대신 해당 지도가 있는 단일 페이지를 열어야 합니다.
15. 보안 참고사항: env의 토큰과 비밀 파일의 토큰
환경 변수는 프로세스 목록 및 크래시 덤프에 나타납니다. 위협 모델이 이를 금지하는 경우 올바른 볼륨 권한이 있는 비밀 파일을 선호하고 환경 중복을 제거하십시오. 바인드 주소 및 역방향 프록시에 대한 게이트웨이 공격 표면 가이드를 따르세요.
16. CI 패리티: GitHub Actions에서 실패한 네임스페이스 재현
많은 팀이 노트북에서만 OpenClaw 문제를 재현합니다. 동일한 Compose 프로젝트를 빌드하고 실행하는 작업을 추가합니다.docker compose run --rm openclaw-cli openclaw channels probe따라서 WS URL의 회귀는 병합 전에 포착됩니다. 이미지를 현명하게 캐시하되 보안 패치가 적용되면 태그를 계속 새로 고칩니다. CI 실행기가 Docker 서비스 이름을 확인할 수 없는 경우 프로덕션 실패 모드를 숨기는 127.0.0.1로 자동으로 폴백하는 대신 해당 제한 사항을 명시적으로 문서화하세요.
17. 역방향 프록시 및 WebSocket 업그레이드 헤더
nginx 또는 Caddy에서 TLS가 종료되면 업그레이드 헤더, 유휴 시간 초과 및 버퍼링 설정을 확인하십시오. WebSocket 프레임을 버퍼링하는 프록시는 로드 시 무작위 1006 종료처럼 보일 수 있습니다. OpenClaw 로그와 함께 프록시 액세스 로그를 캡처하고 타임스탬프를 연관시킵니다. 게이트웨이가 Docker 내에서 일반 HTTP를 유지하는 동안 호스트에서 TLS를 종료하는 경우 신규 채용자가 이중 암호화 또는 잘못된 체계를 다시 도입하지 않도록 해당 다이어그램을 리포지토리에 유지하세요.OPENCLAW_GATEWAY_URL.
18. 통화 중용 Runbook 전달 템플릿
다음을 사건 템플릿에 붙여넣습니다. 프로젝트 이름, 이미지 태그, 실패한 네임스페이스에서 본 WS URL, OPENCLAW_ 변수에 대한 env grep 출력, Gateway.auth.token의 볼륨 경로 출력, nc 결과, 수준별로 필터링된 게이트웨이 로그의 마지막 20줄을 구성합니다. 법적 또는 조달이 클라우드 GPU를 차단하는 경우 문서화된 원격 Mac 풀은 자본 구매 없이 상시 상담원을 위한 안정적인 Apple Silicon 용량을 추가하는 실용적인 방법으로 남아 있습니다.
19. CLI와 게이트웨이 이미지 간의 버전 차이
다른 이미지 태그에 걸쳐 CLI와 게이트웨이를 분할하는 것은 유효하지만 릴리스 노트에서 명시적으로 해당 매트릭스를 지원하는 경우에만 가능합니다. CLI가 게이트웨이 빌드가 이해하지 못하는 핸드셰이크 필드를 추가하면 네트워킹 버그와 유사한 불투명한 연결 끊김이 표시됩니다. 사고가 발생하는 동안 두 이미지를 동일한 릴리스 트레인에 고정한 다음 양분합니다. 플로팅 태그뿐만 아니라 사건 문서에 다이제스트도 기록하세요. 원격 Mac 제품군의 경우 매주 다이제스트 확인을 자동화하여 엔지니어가 기능 작업에 집중하는 동안 드리프트가 자동으로 누적되지 않도록 합니다.
20. 문서 부채는 운영 부채입니다
127.0.0.1 의미를 재발견하는 데 소요되는 모든 시간은 프롬프트나 도구를 개선하는 데 소요되는 시간이 아닙니다. 한 페이지 토폴로지에 한 번 투자하고 README, Runbook 및 온보딩에서 연결하세요. 경영진이 OpenClaw가 프로덕션 준비가 되었는지 물으면 구두 보증이 아닌 프로브 로그와 작성 다이제스트를 건네줍니다. 원격 Mac 대여가 좋은 문서의 필요성을 제거하지는 않지만 실제로 실행되는 프로덕션과 일치하는 표준 스택을 호스팅할 수 있는 안정적인 장소를 제공합니다.
21. 사고 후 검토 메시지
게이트웨이 사고를 종료한 후 CLI를 시작한 네임스페이스, 최종적으로 토큰을 보유한 파일 또는 환경 변수, 토큰 편집 전에 페어링이 시도되었는지 여부, 경로에 프록시가 있는지 여부, 가동 중단 중에 어떤 Compose 다이제스트가 활성화되었는지 등 5가지 질문에 서면으로 답변하세요. 답변 중 하나라도 누락되면 해당 사건이 다음 분기에 다른 증상 문자열로 반복된다는 의미입니다.
마지막으로 원격 호스트의 macOS 마이너 업그레이드를 스택의 semver 범프로 처리하십시오. 플릿이 다시 정상임을 선언하기 전에 각 업그레이드 기간 후에 프로브 및 nc 검사를 다시 실행하십시오.