Skip to content

Commit 23bc735

Browse files
author
박성모
committed
docs(manual-install): add Step 2.5 — Docker basics (daemon = server, start/stop/restart, Dashboard, how OpenClaw uses it) (KO+EN)
1 parent a265585 commit 23bc735

1 file changed

Lines changed: 156 additions & 0 deletions

File tree

docs/GUIDE-MANUAL-INSTALL.md

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,84 @@ docker info # Server: ... 가 보이면 데몬 정상
109109

110110
> 💡 회사용/큰 조직 (250인 이상) 은 Docker Desktop 유료 라이선스가 필요할 수 있습니다. 무료 대안: **Colima** (`brew install colima`, Homebrew 가능할 때만).
111111
112+
### 2.5단계 — Docker 사용법 기초 (데몬 = 서버 켜고 끄기)
113+
114+
> 🤔 **"Docker 데몬이 뭐예요? 서버를 매번 켜야 하나요?"**
115+
>
116+
> 비유: Docker 는 **두 부분** 으로 됩니다.
117+
> - 🐳 **Docker 데몬 (서버)** = 백그라운드에서 컨테이너를 실제로 돌리는 엔진. **메뉴바의 고래 아이콘 = 데몬이 켜진 상태**.
118+
> - 💻 **`docker` 명령어 (클라이언트)** = 터미널에서 데몬에게 명령을 보내는 도구.
119+
>
120+
> **데몬이 꺼져 있으면 `docker` 명령은 모두 실패** ("Cannot connect to the Docker daemon"). OpenClaw 도 데몬이 켜져 있어야 동작합니다.
121+
122+
#### 데몬(서버) 켜기
123+
124+
| 방법 | 명령 / 동작 |
125+
|---|---|
126+
| 🖱 **앱으로 켜기** (가장 쉬움) | Applications → **Docker.app** 더블클릭, 또는 Spotlight (`⌘ Space` → "docker") |
127+
|**터미널에서 켜기** | `open -a Docker` |
128+
| 🔄 **부팅 시 자동 켜기** (기본 ON) | Docker Desktop 설정 → General → "Start Docker Desktop when you sign in" |
129+
130+
켜진 후 **메뉴바의 🐳 고래 아이콘이 움직임을 멈출 때까지** 30~60초 대기 → 그제서야 `docker` 명령이 동작합니다.
131+
132+
#### 데몬(서버) 켜졌는지 확인
133+
134+
```bash
135+
docker info | head -5 # "Server: Docker Engine - Community ..." 보이면 OK
136+
docker ps # 표 헤더가 나오면 OK (CONTAINER ID IMAGE ...)
137+
```
138+
139+
`Cannot connect to the Docker daemon` 가 나오면 → 아직 시동 중. 잠시 기다리거나 메뉴바 고래 아이콘을 클릭해 상태 확인.
140+
141+
#### 데몬(서버) 끄기 / 재시작
142+
143+
| 동작 | 어떻게 |
144+
|---|---|
145+
| 🛑 **그냥 끄기** | 메뉴바 🐳 고래 클릭 → **Quit Docker Desktop** |
146+
| 🔁 **재시작** | 메뉴바 🐳 고래 클릭 → **Restart** (충돌·메모리 누수 시 유용) |
147+
|**터미널에서 끄기** | `osascript -e 'quit app "Docker"'` |
148+
149+
> 💡 데몬을 끄면 **실행 중이던 OpenClaw 컨테이너도 자동으로 정지** 됩니다 (데이터는 보존, 다시 켜면 그대로 복귀).
150+
151+
#### Docker Desktop 창 — 무엇을 볼 수 있나?
152+
153+
메뉴바 🐳 → **Dashboard** (또는 앱 아이콘 클릭) 으로 GUI 가 열립니다. 좌측 사이드바:
154+
155+
|| 무엇 |
156+
|---|---|
157+
| **Containers** | 현재 실행 중·정지된 컨테이너 목록. ▶️ 시작·⏹ 정지·🗑 삭제·로그 보기 모두 GUI 로 가능. OpenClaw 컨테이너도 여기 보임. |
158+
| **Images** | 다운받은 컨테이너 이미지 목록 (디스크 차지) |
159+
| **Volumes** | 영구 데이터 저장소 (OpenClaw 백업·세션이 여기) |
160+
| **Builds** | 본인이 빌드한 이미지 (OpenClaw 사용자에겐 거의 비어있음) |
161+
| **Settings (⚙)** | 메모리·CPU 할당, 자동시작 토글, Rosetta 토글 등 |
162+
163+
> 💡 **터미널에 명령 칠 줄 몰라도** 모든 컨테이너 작업을 Dashboard 에서 클릭으로 할 수 있습니다. 하지만 OpenClaw 는 `./openclaw` 명령으로 통합 관리하는 걸 권장 (백업·네트워크 격리 토글 등 보안 기능 자동 적용).
164+
165+
#### OpenClaw 가 데몬을 어떻게 사용하나?
166+
167+
```
168+
┌─────────────────┐ ┌────────────────────┐ ┌──────────────────┐
169+
│ ./openclaw start│ ──────> │ Docker 데몬(서버) │ ──────> │ OpenClaw 컨테이너 │
170+
│ ./openclaw stop │ 명령 │ (메뉴바 🐳) │ 관리 │ (실제 AI 에이전트) │
171+
│ ./openclaw logs │ └────────────────────┘ └──────────────────┘
172+
└─────────────────┘
173+
```
174+
175+
`./openclaw``docker compose` 명령을 알아서 호출합니다. 사용자가 직접 `docker` 명령을 칠 일은 거의 없습니다 (디버깅이나 호기심 때만).
176+
177+
#### 자주 쓰는 docker 명령 (참고)
178+
179+
| 명령 | 무엇 |
180+
|---|---|
181+
| `docker ps` | 실행 중 컨테이너 목록 |
182+
| `docker ps -a` | 정지된 것까지 모두 |
183+
| `docker images` | 다운받은 이미지 목록 |
184+
| `docker logs <이름>` | 특정 컨테이너 로그 (OpenClaw 는 `./openclaw logs` 로) |
185+
| `docker stats` | CPU·메모리 실시간 사용량 |
186+
| `docker system df` | Docker 가 차지한 디스크 (`./openclaw clean --status` 로 한 번에) |
187+
188+
OpenClaw 사용자에게 **꼭 외울 명령 = 0개**. `./openclaw` 가 다 해줍니다.
189+
112190
### 3단계 — Ollama 직접 다운로드 (선택 — 로컬 LLM 쓸 때)
113191

114192
> Ollama = 내 컴퓨터에서 LLM(Llama, Qwen, Solar 등) 을 돌리는 런타임. 외부 API(OpenAI 등) 만 쓸 거면 이 단계는 건너뛰어도 됩니다.
@@ -449,6 +527,84 @@ docker info
449527

450528
> 💡 Companies with 250+ employees may need a paid Docker Desktop licence. Free alternative: **Colima** (`brew install colima`, only when Homebrew is allowed).
451529
530+
### Step 2.5 — Docker basics (turning the daemon = server on/off)
531+
532+
> 🤔 **"What's the daemon? Do I have to start the server every time?"**
533+
>
534+
> Mental model: Docker has **two parts**.
535+
> - 🐳 **Docker daemon (server)** = the background engine that actually runs containers. **The whale icon in the menu bar = daemon running.**
536+
> - 💻 **`docker` CLI (client)** = the command in your terminal that sends instructions to the daemon.
537+
>
538+
> **If the daemon isn't running, every `docker` command fails** with "Cannot connect to the Docker daemon" — and OpenClaw won't work either.
539+
540+
#### Start the daemon (server)
541+
542+
| Method | Command / Action |
543+
|---|---|
544+
| 🖱 **Open the app** (easiest) | Applications → **Docker.app**, or Spotlight (`⌘ Space` → "docker") |
545+
|**Terminal** | `open -a Docker` |
546+
| 🔄 **Auto-start on login** (default ON) | Docker Desktop Settings → General → "Start Docker Desktop when you sign in" |
547+
548+
After starting, **wait 30–60 s for the menu-bar 🐳 whale to stop animating** — only then are `docker` commands ready.
549+
550+
#### Check the daemon is up
551+
552+
```bash
553+
docker info | head -5 # "Server: Docker Engine ..." line means OK
554+
docker ps # Header (CONTAINER ID IMAGE ...) means OK
555+
```
556+
557+
If you see `Cannot connect to the Docker daemon` it's still booting — wait a bit, or click the menu-bar whale to see status.
558+
559+
#### Stop / restart the daemon
560+
561+
| Action | How |
562+
|---|---|
563+
| 🛑 **Quit** | Menu-bar 🐳 → **Quit Docker Desktop** |
564+
| 🔁 **Restart** | Menu-bar 🐳 → **Restart** (helps with crashes / memory leaks) |
565+
|**Quit from terminal** | `osascript -e 'quit app "Docker"'` |
566+
567+
> 💡 Stopping the daemon **also stops any running OpenClaw containers** (data is preserved; restart and they come back).
568+
569+
#### What's in the Docker Desktop window?
570+
571+
Menu-bar 🐳 → **Dashboard** (or click the app icon) opens the GUI. Sidebar tabs:
572+
573+
| Tab | What |
574+
|---|---|
575+
| **Containers** | Running & stopped containers. ▶️ start, ⏹ stop, 🗑 delete, view logs — all clickable. OpenClaw containers show up here. |
576+
| **Images** | Downloaded container images (disk usage). |
577+
| **Volumes** | Persistent data stores (OpenClaw backups & sessions live here). |
578+
| **Builds** | Images you built locally (rarely used by OpenClaw users). |
579+
| **Settings (⚙)** | RAM/CPU allocation, auto-start toggle, Rosetta toggle, etc. |
580+
581+
> 💡 **You can do everything via the Dashboard** without typing — but for OpenClaw, prefer `./openclaw` commands so security features (network isolation, automatic backups) apply.
582+
583+
#### How OpenClaw uses the daemon
584+
585+
```
586+
┌─────────────────┐ ┌────────────────────┐ ┌──────────────────┐
587+
│ ./openclaw start│ ──────> │ Docker daemon │ ──────> │ OpenClaw │
588+
│ ./openclaw stop │ command │ (menu-bar 🐳) │ manages │ container │
589+
│ ./openclaw logs │ └────────────────────┘ └──────────────────┘
590+
└─────────────────┘
591+
```
592+
593+
`./openclaw` calls `docker compose` for you. You almost never need to run `docker` directly (only for debugging / curiosity).
594+
595+
#### Handy `docker` commands (reference)
596+
597+
| Command | What |
598+
|---|---|
599+
| `docker ps` | Running containers |
600+
| `docker ps -a` | Including stopped |
601+
| `docker images` | Downloaded images |
602+
| `docker logs <name>` | One container's logs (use `./openclaw logs` for OpenClaw) |
603+
| `docker stats` | Live CPU / memory |
604+
| `docker system df` | Disk used by Docker (or use `./openclaw clean --status`) |
605+
606+
Number of `docker` commands an OpenClaw user must memorise: **zero**. `./openclaw` handles it all.
607+
452608
### Step 3 — Download Ollama directly (optional — for local LLMs)
453609

454610
> Ollama runs LLMs (Llama, Qwen, Solar, …) on your Mac. Skip this step if you'll only use external APIs (OpenAI etc.).

0 commit comments

Comments
 (0)