render.yaml 블루프린트는 전체 스택을 선언적으로 정의하며, 서비스, 디스크, 환경 변수를 포함하여 단 한 번의 클릭으로 배포하고 코드와 함께 인프라를 버전 관리할 수 있게 합니다.
사전 요구사항
Render 블루프린트를 사용한 배포
Render에 배포하기 이 링크를 클릭하면 다음이 수행됩니다:- 이 저장소의 루트에 있는
render.yaml블루프린트로부터 새 Render 서비스를 생성합니다. SETUP_PASSWORD를 설정하도록 요청합니다.- Docker 이미지를 빌드하고 배포합니다.
https://<service-name>.onrender.com 패턴을 따릅니다.
블루프린트 이해하기
Render 블루프린트는 인프라를 정의하는 YAML 파일입니다. 이 저장소의render.yaml은 OpenClaw를 실행하는 데 필요한 모든 구성을 제공합니다:
| 기능 | 목적 |
|---|---|
runtime: docker | 저장소의 Dockerfile에서 빌드 |
healthCheckPath | Render가 /health를 모니터링하고 비정상 인스턴스를 재시작 |
sync: false | 배포 중 값 요청 (비밀) |
generateValue: true | 암호학적으로 안전한 값을 자동 생성 |
disk | 재배포 후에도 유지되는 영구 저장소 |
플랜 선택하기
| 플랜 | 스핀 다운 기준 | 디스크 | 최적 용도 |
|---|---|---|---|
| Free | 15분 비활성 후 | 사용 불가 | 테스트, 데모 |
| Starter | 없음 | 1GB+ | 개인 사용, 소규모 팀 |
| Standard+ | 없음 | 1GB+ | 생산 환경, 다중 채널 |
starter로 설정되어 있습니다. 무료 플랜을 사용하려면 포크된 render.yaml의 plan: free로 변경하세요 (하지만 영구 디스크가 없으므로 매 배포 시 설정이 초기화됩니다).
배포 후에
설정 마법사 완료하기
https://<your-service>.onrender.com/setup로 이동합니다.SETUP_PASSWORD를 입력합니다.- 모델 프로바이더를 선택하고 API 키를 입력합니다.
- 선택적으로 메시징 채널 (Telegram, Discord, Slack)을 구성합니다.
- 설정 실행을 클릭합니다.
제어 UI에 액세스
웹 대시보드는https://<your-service>.onrender.com/openclaw에서 사용할 수 있습니다.
Render 대시보드 기능
로그
대시보드 → 서비스 → 로그에서 실시간 로그를 볼 수 있습니다. 필터:- 빌드 로그 (Docker 이미지 생성)
- 배포 로그 (서비스 시작)
- 런타임 로그 (애플리케이션 출력)
셸 액세스
디버깅을 위해 대시보드 → 서비스 → 셸에서 셸 세션을 엽니다. 영구 디스크는/data에 마운트됩니다.
환경 변수
대시보드 → 서비스 → 환경에서 변수를 수정합니다. 변경시 자동으로 재배포가 트리거됩니다.자동 배포
원본 OpenClaw 저장소를 사용하는 경우 Render는 OpenClaw를 자동 배포하지 않습니다. 업데이트하려면 대시보드에서 수동으로 블루프린트를 동기화하십시오.사용자 지정 도메인
- 대시보드 → 서비스 → 설정 → 사용자 지정 도메인으로 이동합니다.
- 도메인을 추가합니다.
- 지시에 따라 DNS를 구성합니다 (CNAME에서
*.onrender.com으로). - Render는 자동으로 TLS 인증서를 제공합니다.
확장
Render는 수평 및 수직 확장을 지원합니다:- 수직: 더 많은 CPU/RAM을 얻기 위해 플랜을 변경합니다.
- 수평: 인스턴스 수를 늘립니다 (Standard 플랜 이상).
백업 및 마이그레이션
언제든지 구성과 작업 공간을 내보낼 수 있습니다:문제 해결
서비스가 시작되지 않음
Render 대시보드의 배포 로그를 확인하세요. 일반적인 문제:- 누락된
SETUP_PASSWORD— 블루프린트는 이를 요청하지만 설정되었는지 확인하세요. - 포트 불일치 —
PORT=8080이 Dockerfile에 노출된 포트와 일치하는지 확인하세요.
느린 콜드 스타트 (무료 플랜)
무료 플랜 서비스는 15분의 비활성 후 스핀 다운합니다. 스핀 다운 후 첫 요청은 컨테이너 시작 시 몇 초가 걸립니다. 항상 켜져 있도록 Starter 플랜으로 업그레이드하세요.배포 후 데이터 손실
이는 무료 플랜(영구 디스크 없음)에서 발생합니다. 유료 플랜으로 업그레이드하거나/setup/export를 통해 정기적으로 설정을 내보내세요.
상태 확인 실패
Render는 30초 내에/health로부터 200 응답을 기대합니다. 빌드는 성공하지만 배포가 실패할 경우, 서비스 시작이 너무 오래 걸릴 수 있습니다. 확인 사항:
- 빌드 로그에서 오류 확인
docker build && docker run로 로컬에서 컨테이너 실행 여부 확인