Oracle Cloud(OCI)에서 OpenClaw 운영하기
개발자라면 누구나 개인 프로젝트나 봇을 24시간 내내 돌리고 싶어 하죠. 하지만 매달 나가는 VPS 비용은 은근히 부담스럽습니다. 사양이 넉넉하면서도 평생 무료인 서버를 찾다 보면 결국 Oracle Cloud의 ARM 티어에 도달하게 되는데요. 막상 시작하려고 하면 ARM 아키텍처의 호환성이나 복잡한 네트워크 설정 때문에 망설여지곤 합니다.
이 가이드에서는 Oracle Cloud의 Always Free 리소스를 활용해 OpenClaw Gateway를 안정적으로 구축하는 방법을 직접적인 단계별로 설명해 드릴게요.
필요한 것
섹션 제목: “필요한 것”- Oracle Cloud 계정 (가입하기)
- Tailscale 계정 (tailscale.com에서 무료 가입)
- 약 30분의 여유 시간
빠른 시작
섹션 제목: “빠른 시작”1. OCI 인스턴스 생성
섹션 제목: “1. OCI 인스턴스 생성”- Oracle Cloud Console에 로그인하세요.
- Compute → Instances → Create Instance로 이동합니다.
- 다음과 같이 설정하세요:
- Name:
openclaw - Image: Ubuntu 24.04 (aarch64)
- Shape:
VM.Standard.A1.Flex(Ampere ARM) - OCPUs: 2 (최대 4까지 가능)
- Memory: 12 GB (최대 24 GB까지 가능)
- Boot volume: 50 GB (최대 200 GB까지 무료)
- SSH key: 본인의 공개키(public key)를 추가하세요.
- Name:
- Create를 클릭합니다.
- 생성된 인스턴스의 공인 IP 주소를 메모해 두세요.
Tip: 인스턴스 생성 시 “Out of capacity” 오류가 발생하면 다른 가용성 도메인(Availability Domain)을 선택하거나 나중에 다시 시도해 보세요. 무료 티어는 자원이 한정되어 있습니다.
2. 접속 및 업데이트
섹션 제목: “2. 접속 및 업데이트”# 공인 IP로 접속ssh ubuntu@YOUR_PUBLIC_IP
# 시스템 업데이트sudo apt update && sudo apt upgrade -ysudo apt install -y build-essential3. 사용자 및 호스트네임 설정
섹션 제목: “3. 사용자 및 호스트네임 설정”# 호스트네임 설정sudo hostnamectl set-hostname openclaw
# ubuntu 사용자 비밀번호 설정sudo passwd ubuntu
# lingering 활성화 (로그아웃 후에도 서비스 유지)sudo loginctl enable-linger ubuntu4. Tailscale 설치
섹션 제목: “4. Tailscale 설치”Tailscale을 사용하면 공인 IP 없이도 안전하게 접속할 수 있습니다.
curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up --ssh --hostname=openclaw이제 어떤 기기에서든 ssh ubuntu@openclaw로 접속할 수 있습니다.
5. OpenClaw 설치
섹션 제목: “5. OpenClaw 설치”curl -fsSL https://openclaw.ai/install.sh | bashsource ~/.bashrc“How do you want to hatch your bot?”이라는 질문이 나오면 **“Do this later”**를 선택하세요.
6. Gateway 설정 및 Tailscale Serve 활성화
섹션 제목: “6. Gateway 설정 및 Tailscale Serve 활성화”보안을 위해 토큰 인증을 사용하고 Tailscale Serve로 HTTPS를 적용합니다.
# Gateway를 VM 내부(loopback)로 제한openclaw config set gateway.bind loopback
# 토큰 인증 활성화 및 생성openclaw config set gateway.auth.mode tokenopenclaw doctor --generate-gateway-token
# Tailscale Serve 노출 (HTTPS 적용)openclaw config set gateway.tailscale.mode serveopenclaw config set gateway.trustedProxies '["127.0.0.1"]'
systemctl --user restart openclaw-gateway7. 보안 강화 (VCN 설정)
섹션 제목: “7. 보안 강화 (VCN 설정)”마지막으로 OCI 콘솔에서 Tailscale을 제외한 모든 외부 트래픽을 차단하세요.
- Networking → Virtual Cloud Networks로 이동합니다.
- 해당 VCN 클릭 → Security Lists → Default Security List를 선택하세요.
- Ingress Rules에서 다음을 제외하고 모두 삭제하세요:
0.0.0.0/0 UDP 41641(Tailscale용)
- Egress Rules는 기본값(모두 허용)으로 둡니다.
이제 22번 포트(SSH)를 포함한 모든 포트가 외부에서 차단되었으며, 오직 Tailscale을 통해서만 접속 가능합니다.
문제 해결
섹션 제목: “문제 해결”인스턴스 생성 실패 (“Out of capacity”)
섹션 제목: “인스턴스 생성 실패 (“Out of capacity”)”무료 티어 ARM 인스턴스는 인기가 많습니다. 다음 방법을 시도해 보세요:
- 가용성 도메인을 변경해 보세요.
- 이른 아침 등 사용자가 적은 시간에 다시 시도하세요.
- Shape 선택 시 “Always Free” 필터를 사용하세요.
Tailscale 접속 문제
섹션 제목: “Tailscale 접속 문제”# 상태 확인sudo tailscale status
# 재인증sudo tailscale up --ssh --hostname=openclaw --resetGateway가 시작되지 않을 때
섹션 제목: “Gateway가 시작되지 않을 때”openclaw gateway statusopenclaw doctor --non-interactivejournalctl --user -u openclaw-gateway -n 50Control UI 접속 불가
섹션 제목: “Control UI 접속 불가”# Tailscale Serve 상태 확인tailscale serve status
# 로컬에서 Gateway 응답 확인curl http://localhost:18789
# 서비스 재시작systemctl --user restart openclaw-gatewayARM 바이너리 관련 이슈
섹션 제목: “ARM 바이너리 관련 이슈”uname -m을 실행했을 때 aarch64가 나오는지 확인하세요. 대부분의 npm 패키지는 잘 작동하지만, 바이너리의 경우 linux-arm64 버전을 사용해야 합니다.
도움이 더 필요하신가요? AI Setup Assistant에게 물어보세요.
다음 단계
섹션 제목: “다음 단계”- Gateway remote access — 다른 원격 접속 패턴 알아보기
- Tailscale integration — Tailscale 연동 상세 문서
- Gateway configuration — 모든 설정 옵션 확인
- DigitalOcean guide — 유료지만 더 쉬운 설정이 필요하다면
OpenClaw Expert
아직 막혀 있나요?
이 문서에서 답을 못 찾았다면 OpenClaw Expert에게 바로 물어보세요.