| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- AI 코딩
- 오픈웨이트
- Claude
- Android
- 오픈모델
- Anthropic
- AI 에이전트 개발
- 홍드로이드
- Android Studio
- ai에이전트
- 실무
- 개발환경
- 개발자 도구
- 안드로이드
- OpenAI
- ai 뉴스
- 무료 ai
- claudecode
- 자동화
- 안드로이드 스튜디오
- 클로드코드
- 카드 없이
- claude code
- AI 에이전트
- 무료로 시작하기
- LLM
- 바이브코딩
- Gemini
- MCP
- 개발 생산성
- Today
- Total
홍드로이드의 야매코딩
Claude 자체 호스팅 운영 — 세션이 넘어가면 안 올린 작업이 사라집니다 본문

사내 서버에서 AI 세션을 여러 대로 굴리기 시작하면 성격이 달라집니다. 한 대에서 시험할 땐 안 보이던 것들이 나오거든요. 공식 문서의 운영 편을 읽어보니 세션이 다른 기계로 넘어가는 순간 아직 안 올린 작업이 통째로 사라지고, 조직 구성원이면 누구나 아무 환경에나 세션을 보낼 수 있습니다. 심지어 구제 옵션에도 조건이 붙어요. 실제로 물릴 만한 것들만 골라 정리했습니다.
📌 30초 요약
- ★★넘어가면 처음부터 다시 받습니다 — 안 올린 작업은 사라집니다.
- ★구제 옵션은 커밋된 것만 살립니다 — 게다가 조건이 붙습니다.
- ★환경별 접근 제어가 없습니다 — 조직 구성원이면 누구나 보냅니다.
- ⚠️ IP 허용 목록은 이 트래픽을 안 덮습니다.
- 종료 유예 기본값이 짧아 정리가 잘립니다.
- 미리 받아둔 사본에 이전 흔적이 남습니다.
넘어가면 안 올린 작업이 사라집니다
가장 먼저 알아야 할 동작입니다. 세션은 쉬는 시간이 길거나 러너를 다시 시작하면 손에서 놓입니다. 그 뒤 사용자가 다시 말을 걸면 새 기계에서 저장소를 처음부터 다시 받아 이어가요. 문제는 그 순간입니다 — 아직 올리지 않은 작업은 통째로 없어집니다. 시작 가지에서 다시 시작하니까요.
구제 장치가 있긴 합니다. 놓기 전에 결과 가지를 최선을 다해 밀어 올리게 켤 수 있어요. 그럼 이어붙을 때 그 지점에서 출발합니다. 다만 커밋된 것만 살고, 작업 중이던 지저분한 상태는 안 살아납니다. 그리고 그 세션이 쓰던 설정 폴더와 셸에 남긴 흔적도 함께 버려집니다.
⚠️ 그 옵션을 켜기 전에 가지 권한부터 잠그세요
문서가 조건을 하나 답니다. 다시 이어붙을 때 러너는 먼저 올려둔 가지를 가져오면서 그걸 누가 올렸는지 확인하지 않습니다. 그러니까 그 가지에 밀어 넣을 수 있는 사람이면 누구나, 이어붙는 작업 폴더에 내용을 심어둘 수 있다는 뜻이에요. 켜기 전에 그 이름 규칙의 가지에 누가 밀어 넣을 수 있는지 규칙으로 먼저 제한하라고 못을 박습니다.
비슷한 결로 미리 알아둘 게 둘 더 있습니다. 세션을 시작한 뒤에 비공개 저장소를 하나 더 붙이면 실패합니다 — 나중에 붙는 저장소는 자격 없이 받아오려 하거든요. 필요한 저장소는 만들 때 다 골라야 합니다. 그리고 끝나지 않는 배경 작업을 붙들고 있는 세션은 "쉬는 중"으로 안 쳐서 자리를 계속 잡습니다. 승인 대기 중인 세션도 마찬가지고요. 그래서 쉬면 놓아주는 설정만 걸지 말고, 일정 시간이 지나면 무조건 끊는 장치를 함께 걸라고 합니다.
누가 이 기계에 코드를 보낼 수 있나
여기가 운영 판단을 가르는 대목입니다. 자체 호스팅 러너는 모델이 지시하는 코드를 우리 인프라에서 그대로 실행합니다. 그리고 환경별 접근 제어가 없어요 — 조직 구성원이면 누구나 어느 환경으로든 세션을 보낼 수 있습니다. 관리자가 채널을 그 환경에 연결해 뒀다면, 연결된 대화방에 있는 사람이면 계정이 없어도 그쪽에서 세션을 시작할 수 있고요.
그래서 문서의 원칙이 단호합니다 — 러너 기계에는 "그들 전부가 읽어도 되는 것"만 두라는 것. 특정 계정의 세션만 받도록 묶는 설정이 있긴 하지만, 그건 이 기계가 누구 걸 실행할지를 좁히는 것이지 누가 보낼 수 있는지를 줄이지는 못합니다. 도구를 처음 살펴볼 때는 잘 안 떠오르는 질문인데, 사내에 깔 때는 여기부터 답해야 합니다.
| 막고 싶은 것 | 문서의 답 |
|---|---|
| 세션이 아무 데나 접속 | 내 네트워크 경계에서 기본 차단 — 제품이 대신 못 해줌 |
| 조직 IP 허용 목록 | 이 트래픽은 기본적으로 안 덮습니다 |
| 세션이 기계 신분을 빌려 씀 | 기계 정보 창구를 컨테이너 안에서 막기 |
| 환경 등록 비밀 노출 | 고정 대수로 굴리면 모든 세션이 읽을 수 있다고 보라 |
표의 셋째 줄이 특히 놓치기 쉽습니다. 망 단위로 나가는 길을 막아도 기계 정보를 물어보는 그 주소는 안 걸립니다. 컨테이너 안쪽에서 따로 막아야 하고, 그 차단은 내가 넣은 준비 스크립트와 훅에도 똑같이 적용됩니다. 같은 컨테이너를 쓰니까요. 그리고 커넥터를 쓰면 그 호출은 우리 네트워크에서 나가지 않습니다 — 바깥 인프라에서 대신 부르거든요. 사내에 머물러야 하는 도구라면 러너 이미지에 직접 얹으라고 안내합니다.
종료 유예를 짧게 잡으면 정리가 잘립니다
러너를 내릴 때 밟는 정리 경로가 꽤 깁니다. 새 일을 안 받고, 진행 중인 차례를 기다리고, 세션을 정리하고, 마지막 스크립트를 돌리고. 이 전체에 필요한 시간을 러너가 켜질 때 로그로 알려줍니다. 기본값 기준으로 1분 20초 정도예요.
그런데 흔히 쓰는 오케스트레이션 도구의 기본 종료 유예가 30초입니다. 그대로 두면 러너가 정리를 마치기 전에 컨테이너를 죽입니다. 그러면 마지막 스크립트가 아예 안 돌고, 등록 해제도 못 해서 1분쯤 뒤에 세션이 다른 기계로 다시 배정돼요. 반대로 정리 도중에 신호가 한 번 더 오면 즉시 강제 종료됩니다. 문서가 "러너가 켜질 때 찍어주는 그 숫자 이상으로 유예를 잡으라"고 반복해 말하는 이유입니다. 재시작을 미루는 설정을 쓴다면 미룬 시간과 놓아주는 유예까지 더해서 잡아야 하고요.
✅ 대수를 늘려도 시간은 안 늘어납니다
좋은 소식도 있습니다. 여러 세션이 한 예산 안에서 나란히 정리되기 때문에, 한 대가 맡는 세션 수를 늘려도 정리에 드는 총 시간은 안 늘어납니다. 그리고 정리하는 내내 러너가 "자리 없음" 상태로 계속 신호를 보내서, 마지막 스크립트가 작업을 저장하는 중에 세션이 다른 기계로 넘어가 버리는 일을 막아줍니다. 자동 점검을 걸어둘 때도 이 시간을 알고 있어야 대기 시간을 제대로 잡을 수 있어요.
미리 받아둔 사본이 남기는 것들
저장소가 크면 받아오는 데만 한참 걸립니다. 그래서 사본을 미리 만들어 두고 세션마다 재사용하는 방법이 있어요. 요청한 지점만 받아와 되돌리니 거의 즉시죠. 다만 성질을 알아야 합니다 — 추적되는 파일은 매번 되돌려지지만, 청소는 안 해서 이전 세션이 남긴 추적 안 되는 파일은 그대로 남습니다. 그래서 이 방식은 한 사람 계정으로 묶어둔 기계에서만 쓰라고 하고, 채널에서 오는 세션은 아예 안 받습니다.
마지막으로 대수를 늘릴 때의 함정 하나. 기계마다 기준 폴더나 한 대가 맡는 세션 수를 다르게 잡으면 안 됩니다. 이어붙는 세션은 새 기계의 값으로 작업 폴더 위치를 다시 계산하는데, 값이 다르면 위치가 바뀌어서 에이전트가 앞서 적어둔 절대 경로가 없는 곳을 가리키게 됩니다. 기계 이름 같은 걸 섞어 넣는 것도 금물이고요. 판 고정도 챙기세요 — 세션은 호스트에 깔린 판을 그대로 쓰고 세션 안에서는 자동 갱신이 꺼집니다. 올리려면 새로 깔고 러너를 다시 시작해야 합니다. 무료 도구로 가볍게 시작하는 흐름과는 완전히 다른 무게의 결정들이죠.
자주 묻는 질문 (FAQ)
Q. 한 대에 세션을 여러 개 받게 하면 안 되나요?
문서의 강화 지침은 한 대가 세션 하나만 맡고 끝나면 통째로 버려지는 구성을 권합니다. 여러 개를 받게 하면 같은 주인의 세션들이 같은 기계를 나눠 쓰게 되거든요. 디스크는 재시작 사이에 재사용하지 말고, 주인이 다르면 절대 공유하지 말라고 합니다.
Q. 저장소에 커밋한 설정은 그대로 먹히나요?
러너가 작업 폴더 밖으로 나가는 허용, 환경 값 묶음, 운영 자세를 뒤집는 값을 훑어봅니다. 기본은 경고만 남기고 그냥 띄우지만, 엄격하게 걸면 세션을 아예 거부합니다. 다만 저장소 훅과 셸 명령 규칙까지는 안 봅니다.
Q. 회사 프록시가 매번 인증을 요구하는데요?
값이 자주 바뀌어 주소에 못 박아 넣는 경우를 위해 값을 그때그때 만들어 오거나 파일에서 읽어오게 할 수 있습니다. 러너가 자기 앞에 중계를 하나 세우고 거기로 다 흘려보내요. 둘을 동시에 설정하거나 프록시 주소가 없으면 아예 시작을 거부합니다.
Q. 몇 대나 띄워야 하나요?
기계 한 대가 한 주인에게 묶이기 때문에, 최소 대수는 동시에 일할 사람 수입니다. 한 대가 맡는 세션 수를 늘리는 건 한 사람의 세션 여러 개를 병렬로 돌리는 것이지, 여러 사람을 받는 게 아닙니다.
✨ 정리하면
자체 호스팅을 여러 대로 늘리는 순간 성격이 바뀝니다. 세션은 언제든 다른 기계로 넘어갈 수 있고, 그때 안 올린 작업은 사라집니다. 그러니 종료 유예는 러너가 알려주는 숫자 이상으로, 기준 폴더와 대수는 전 기계 통일, 나가는 길은 기본 차단 — 이 셋만 먼저 맞춰도 대부분의 사고가 걸러집니다. 비용과 권한을 함께 설계하는 흐름은 AI 지출 관리 허브에 단계별로 정리해 두었습니다.
출처: Claude Code 공식 문서 「자체 호스팅 환경 운영 배포」 (2026-08-31 열람). 자체 호스팅 환경은 공개 베타 단계이며 팀·기업 요금제에서 관리자가 켜야 씁니다. 기본값과 일부 동작은 러너 버전에 따라 다르고, 세부 절차는 변경될 수 있습니다.
'AI & Vibe Coding' 카테고리의 다른 글
| AI 에이전트 서버 배포 — 세션이 스스로 안 끝나고 기억이 샙니다 (0) | 2026.08.31 |
|---|---|
| AI 에이전트 대화 기록 외부 저장 — 이어받으면 로컬 사본이 지워집니다 (1) | 2026.08.31 |
| Claude 자체 호스팅 CI 테스트 — 30일마다 다시 로그인해야 합니다 (0) | 2026.08.31 |
| Claude 자체 호스팅 인증 오류 — 30분 뒤 갑자기 전부 실패합니다 (0) | 2026.08.31 |
| Claude 자체 호스팅 신원 확인 — 이메일로 사람을 가리면 안 됩니다 (0) | 2026.08.31 |