리눅스 환경에 openclaw 설치하기 (ollama 사용)
1) 기본 패키지 업데이트 + 필수 도구 설치
sudo apt update
sudo apt -y upgrade
sudo apt -y install curl git ca-certificates build-essential
2) Node.js 22+ 설치 (OpenClaw 필수)
OpenClaw 공식 “Getting Started”에서 Node >= 22를 prereq로 명시합니다.
가장 무난한 방법은 nvm 사용입니다.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# 쉘 재시작 또는 아래 중 하나 실행
source ~/.bashrcnvm install 22nvm use 22
node -vnpm -v
(선택) pnpm을 쓰고 싶으면:
corepack enable
corepack prepare pnpm@latest --activate
pnpm -v
3) OpenClaw CLI 설치
공식 설치 스크립트(권장):
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw -V
4) (권장) 온보딩으로 게이트웨이 + 데몬 설치
OpenClaw는 openclaw onboard --install-daemon으로 게이트웨이 설정 + 백그라운드 서비스(systemd) 설치를 한 번에 처리하는 것을 권장합니다.
openclaw onboard --install-daemon
온보딩에서 보통 아래를 선택/입력하게 됩니다.
-
Local gateway
-
Runtime: Node (Telegram 채널은 Node 권장/필수에 가깝습니다)
-
Channels: Telegram 사용 예정이면 Telegram 토큰 입력(아래 7단계에서 생성)
-
Models: Ollama 로컬 사용(아래 5~6단계에서 준비)
설치가 끝나면 게이트웨이가 떠 있어야 합니다:
openclaw gateway status
또는 포그라운드로 직접 띄우려면(디버깅용):
openclaw gateway --port 18789 --verbose
5) Ollama 설치 (로컬 모델 런타임)
Ollama 공식 Linux 설치:
curl -fsSL https://ollama.com/install.sh | sh
설치 후 동작 확인:
ollama --version
6) Ollama에 모델 설치(풀) + OpenAI 호환 API 확인
6-1) 모델 다운로드(예시)
OpenClaw 문서 예시 모델들:
ollama pull llama3.3
# 또는 코딩 쪽이면
# ollama pull qwen2.5-coder:32b
# 또는 추론형이면
# ollama pull deepseek-r1:32b
서버 사양이 RAM 96GB라 큰 모델도 가능하지만(특히 GPU 없으면) 처음엔 llama3.3 같이 비교적 가벼운 걸로 연결 성공부터 확인하는 걸 추천합니다.
6-2) Ollama가 OpenAI 호환 엔드포인트를 제공하는지 확인
Ollama는 OpenAI 호환 API를 제공합니다.
기본적으로 OpenAI 호환 base_url은 보통 다음 형태로 씁니다(툴/앱 연동 시):
-
http://localhost:11434/v1
(OpenClaw도 이 OpenAI 호환 API로 붙습니다. )
7) OpenClaw ↔ Ollama 연결 설정
OpenClaw의 Ollama 연동은 크게 2가지 방식입니다.
방식 A) “자동 디스커버리(간단)” (권장)
OpenClaw 문서: OLLAMA_API_KEY는 아무 값이나 넣어도 되고, 이 값을 넣으면 로컬 Ollama(127.0.0.1:11434)를 조회해 모델을 자동으로 잡습니다.
-
환경변수로 설정(현재 쉘에서 즉시 테스트):
export OLLAMA_API_KEY="ollama-local"
-
OpenClaw 기본 모델을 Ollama로 지정(설정 파일에 반영):
OpenClaw config는 보통~/.openclaw/openclaw.json에 둡니다.
예: ~/.openclaw/openclaw.json에 아래를 추가/수정
{
agents: {
defaults: {
model: { primary: "ollama/llama3.3" }
}
}
}
이 표기(ollama/<model>)가 OpenClaw 문서 예시입니다.
-
게이트웨이 재시작(서비스로 설치한 경우):
openclaw gateway restart
게이트웨이 서비스 재시작은 openclaw gateway restart가 정석입니다.
-
모델 목록 확인:
ollama list
openclaw models list
8) Telegram 봇(ncue_bot) 만들기 + OpenClaw 채널 연결
8-1) BotFather로 봇 생성 & 토큰 발급
OpenClaw Telegram 채널 문서의 “Setup (fast path)” 그대로입니다.
-
Telegram에서 @BotFather 대화
-
/newbot -
이름/유저네임 입력 (유저네임을
ncue_bot으로 쓰려면 사용 가능해야 함, 보통...bot으로 끝나야 함) -
발급된 bot token 복사
8-2) OpenClaw에 Telegram 토큰 설정
문서상 방법 2가지: env 또는 config. 둘 다 있으면 config가 우선입니다.
서비스(daemon)로 쓸 거면 config에 박아두는 방식이 운영이 편합니다.
~/.openclaw/openclaw.json에 추가(최소 설정 예시):
{
channels: {
telegram: {
enabled: true,
botToken: "123:abc",
dmPolicy: "pairing"
}
}
}
설정 후 재시작:
openclaw gateway restart
8-3) DM 페어링 승인(보안 기본값)
Telegram DM은 기본이 “pairing”이라, 처음 DM하면 코드가 발급되고 승인 전에는 메시지를 무시합니다.
-
본인 계정으로 @ncue_bot 에 DM 보내기
-
서버에서 페어링 코드 확인 & 승인:
openclaw pairing list telegram
openclaw pairing approve telegram <CODE>
(팁) 내 Telegram user id를 알아야 allowlist를 제대로 걸 수 있는데, OpenClaw는 로그에서 from.id를 확인하는 방법도 안내합니다.
9) “텔레그램 채널/그룹”에서 쓰고 싶다면 (중요)
Telegram 그룹에서 동작은 (1) 어떤 그룹 허용 + (2) 어떤 발신자 허용이 별개로 제어됩니다. 기본값은 그룹에서 막히는 쪽(allowlist)이라 설정 없으면 “안 되는 게 정상”일 수 있어요.
9-1) 그룹 허용(그룹 allowlist)
-
channels.telegram.groups가 없으면 모든 그룹 허용 -
groups를 설정하면 나열된 그룹만 허용
예시(특정 그룹 1개만):
{
channels: {
telegram: {
groups: {
"-1001234567890": {}
}
}
}
}
9-2) 그룹 내 발신자 정책(groupPolicy)
-
"open": (허용된 그룹 안에서는) 아무나 메시지 가능 -
"allowlist":groupAllowFrom에 있는 사람만 가능 (기본값) -
"disabled": 그룹 메시지 전부 차단
운영 권장 조합(문서 권장): 특정 그룹 + 특정 사용자만:
{
channels: {
telegram: {
groupPolicy: "allowlist",
groupAllowFrom: ["123456789"], // 사람의 user id
groups: { "-1001234567890": {} }
}
}
}
설정 바꿨으면:
openclaw gateway restart
10) 최종 점검(문제 생기면 여기부터)
공식 Getting Started의 빠른 검증 커맨드:
openclaw status
openclaw health
openclaw security audit --deep
로그를 보면서 Telegram 수신/모델 호출이 되는지 확인:
openclaw logs --follow
11) 운영 보안 체크(강력 권장)
-
DM은 pairing/allowlist를 유지(기본값이 pairing)
-
그룹은 “open”으로 풀기 전에 최소한
groups+groupAllowFrom로 좁히기 -
설정/크리덴셜 저장 위치는 민감 정보이므로 권한 관리(특히
~/.openclaw/credentials/)
가장 짧은 “성공 루트” 요약
-
Node 22 설치 → 2)
curl ...openclaw/install.sh | bash→ 3)openclaw onboard --install-daemon -
Ollama 설치 +
ollama pull llama3.3 -
~/.openclaw/openclaw.json에agents.defaults.model.primary="ollama/llama3.3"+ Telegram botToken 설정 -
openclaw gateway restart→ DM 보내고openclaw pairing approve telegram <CODE>
설치 성공 화면
