NAS 위에 OpenClaw를 올리고 싶다면, 그 전에 반드시 한 단계가 들어갑니다. 바로 Docker입니다. Docker는 NAS 안에 작은 방을 하나 만들어 그 방 안에서만 OpenClaw가 움직이도록 해주는 도구입니다. 이번 편은 OpenClaw 설치 직전에 알아두면 가장 도움이 되는 Docker 준비 과정을 정리합니다.
시놀로지 NAS에 Docker(Container Manager)를 설치하고, OpenClaw가 들어올 폴더·권한·포트·환경변수를 미리 잡아두는 단계까지 마칩니다. 보안과 자동 재시작, 백업 정책도 함께 잡아둡니다.
Docker는 NAS 안의 작은 프로그램 방입니다
Docker를 한 줄로 표현하면 “프로그램을 통째로 박스에 담아 어디서든 똑같이 실행하게 해주는 기술”입니다. NAS 위에 직접 프로그램을 깔면 다른 패키지와 충돌하거나 시놀로지 펌웨어 업데이트 한 번에 환경이 흔들리기 쉽습니다. 그러나 Docker로 박스에 담아두면 그 박스 안의 환경은 바깥과 분리됩니다.
즉 Docker 박스는 NAS의 본체와 분리된 작은 공간입니다. 박스 안에서 무엇이 돌아가든 NAS 자체는 영향받지 않습니다. OpenClaw처럼 외부 도구를 다루는 비서는 이런 분리된 공간에서 돌리는 편이 안전합니다.
한 가지 더 짚어두면, 여기서 말하는 “박스”는 가상머신과 다릅니다. 가상머신은 NAS 안에 또 하나의 컴퓨터를 통째로 띄우는 방식이라 자원 소모가 큽니다. 반면 Docker는 NAS의 운영체제를 그대로 공유하면서 박스만 살짝 분리합니다. 같은 분리감을 가지면서도 가볍게 동작합니다. NAS처럼 자원이 한정된 장비에서 OpenClaw를 돌리려면 이 차이가 중요합니다.
OpenClaw가 Docker 위에서 도는 이유
OpenClaw는 텔레그램, 외부 API 토큰, 자료 폴더처럼 여러 자원을 동시에 다룹니다. NAS 본체에 직접 설치하면 OpenClaw가 시스템 폴더에 흩어져 들어가게 됩니다. 그러면 나중에 버전을 올리거나 옮길 때 무엇이 어디에 있는지 추적이 어렵습니다.
Docker 위에 올리면 다음 네 가지 이점이 명확해집니다.
- 설정 분리 — OpenClaw 설정 파일은 지정한 한 폴더에만 모입니다.
- 로그 분리 — 로그도 별도 폴더에 쌓여 점검과 백업이 쉽습니다.
- 토큰 분리 — API 키는 환경변수로 분리해 본문이나 코드에 노출되지 않습니다.
- 이전 용이 — 다른 NAS로 옮겨도 폴더 한 묶음과 환경변수만 가져가면 됩니다.
즉 Docker는 단순한 가상화 도구가 아니라, OpenClaw를 “정리된 한 묶음”으로 다루기 위한 그릇입니다. 1편에서 “AI에게는 똑똑함보다 자료가 먼저”라는 점을 짚었다면, 4편의 핵심은 “OpenClaw가 그 자료를 깔끔하게 다루도록 NAS 안의 작업 공간을 미리 잡아둔다”는 것입니다. 자료의 자리, 토큰의 자리, 로그의 자리를 분리해 두면 이후 운영이 매우 단순해집니다.
이미지·컨테이너·볼륨 — 핵심 세 가지
Docker를 처음 배울 때 가장 자주 헷갈리는 단어는 이미지, 컨테이너, 볼륨 세 가지입니다. 각각의 차이를 짧게 정리하면 다음과 같습니다.
- 이미지(Image) — 프로그램의 설치 파일. 한 번 받아 두면 그대로 보관됩니다.
- 컨테이너(Container) — 이미지를 실제로 켠 상태. 켜면 실행되고, 끄면 사라지는 “인스턴스”입니다.
- 볼륨(Volume) — 컨테이너 바깥에 따로 저장하는 폴더. 컨테이너가 꺼져도 자료는 남습니다.
셋의 관계는 단순합니다. 이미지를 받아 → 컨테이너로 켜고 → 자료는 볼륨에 둡니다. OpenClaw 설정과 데이터도 모두 볼륨에 저장해야, 컨테이너를 다시 띄우거나 버전을 올려도 자료가 그대로 남습니다.
비유로 풀어 보면 이렇습니다. 이미지는 가구의 설계도입니다. 같은 설계도로 가구를 여러 개 만들 수 있지만, 설계도 자체는 변하지 않습니다. 컨테이너는 그 설계도로 실제 만들어 둔 가구 한 점입니다. 같은 설계도라도 만든 시점과 위치에 따라 다른 가구로 존재합니다. 볼륨은 그 가구 위에 올려둔 물건들입니다. 가구를 치워도 물건은 남고, 새 가구로 옮겨도 그대로 따라갑니다. OpenClaw의 자료 역시 가구가 아니라 물건 쪽에 두는 것이 안전합니다.
NAS 사양으로 가능한 일과 한계
시놀로지 모델별로 OpenClaw를 어디까지 운영할 수 있는지가 달라집니다. 무리한 사양에서 억지로 돌리기보다 본인 NAS의 한계를 먼저 인정하고 시작하는 편이 안정적입니다.
| RAM | 권장 사용 범위 |
|---|---|
| 2GB | 가벼운 테스트용. OpenClaw 단독 동작은 가능하나 동시에 다른 컨테이너는 부담 |
| 4GB | 최소 실사용권. OpenClaw + 1~2개 보조 서비스까지 무난 |
| 8GB 이상 | 여러 컨테이너 병행 운영 권장. 자동화·미디어·백업 동시에 가능 |
| ARM 구형 모델 | 설치 전 컨테이너 호환성을 반드시 확인. 일부 이미지는 미지원 |
사양이 부족한 NAS라면 OpenClaw를 가볍게 시험해 보고, 본격 운영은 RAM 확장 후로 미루는 편이 낫습니다.
Container Manager 설치와 프로젝트 개념
시놀로지 DSM 7에서는 Docker 기능이 Container Manager라는 이름의 패키지로 들어옵니다. 패키지 센터에서 검색해 설치만 누르면 끝입니다. 설치가 완료되면 좌측 메뉴에 컨테이너·이미지·네트워크·레지스트리·프로젝트 항목이 나타납니다.
초보자가 가장 먼저 알아두면 좋은 항목은 “프로젝트(Project)”입니다. 프로젝트는 여러 컨테이너를 한 묶음으로 정의해 한꺼번에 켜고 끄는 기능으로, Docker Compose 개념과 같습니다. OpenClaw처럼 본체 컨테이너 + 부수 서비스가 함께 도는 도구는 단일 컨테이너보다 프로젝트로 묶어 두는 편이 관리가 쉽습니다.
5편에서 OpenClaw 설치 화면으로 넘어갈 때 프로젝트 화면을 자주 사용하므로, 4편에서는 “Container Manager의 프로젝트 메뉴 위치”까지만 익혀두면 충분합니다.
OpenClaw용 폴더와 권한 미리 잡기
컨테이너를 켜기 전에 NAS 안에 OpenClaw 전용 폴더 구조를 먼저 만들어 두면 이후 설치가 매우 단정해집니다. 권장 구조는 다음과 같습니다.
/docker/openclaw/config— 설정 파일/docker/openclaw/data— 학습·연동 자료, 데이터베이스/docker/openclaw/logs— 실행 로그
세 폴더는 컨테이너의 볼륨으로 그대로 연결됩니다. 컨테이너가 다시 떠도 이 폴더들이 그대로 살아있어, 설정과 자료가 사라지지 않습니다.
권한 측면에서는 관리자 계정으로 컨테이너를 직접 돌리지 않는 것이 원칙입니다. NAS 안에 OpenClaw 전용 사용자(예: openclaw_user)를 만들고, 위 세 폴더에만 읽기·쓰기 권한을 부여하는 것이 가장 안전합니다. 시놀로지 DSM의 제어판 → 사용자 및 그룹에서 새 계정을 만들고, 제어판 → 공유 폴더 → 권한에서 위 세 폴더에 대해 그 계정에만 접근을 허용하면 됩니다. 다른 가족 구성원의 일반 자료 폴더에는 이 계정이 들어가지 못하도록 막아 두는 편이 보안상 유리합니다.
또 한 가지, 컨테이너에서 자주 쓰이는 UID/GID 일치 개념도 미리 알아두면 좋습니다. 컨테이너 안의 사용자 ID와 NAS 폴더의 소유자 ID가 다르면, 컨테이너가 폴더에 글을 쓰지 못하는 권한 오류가 납니다. 5편에서 OpenClaw 컨테이너를 띄울 때 PUID·PGID 같은 환경변수가 등장하는데, 그 값은 방금 만든 openclaw_user의 UID·GID와 동일하게 맞추면 됩니다. 4편 단계에서는 “전용 계정을 만들고, 그 UID/GID를 메모해 둔다” 정도까지만 끝내 두면 충분합니다.
포트와 환경변수 — 토큰은 본문에 적지 마세요
포트(Port)는 외부에서 NAS의 컨테이너로 들어가는 출입문 번호입니다. OpenClaw는 일반적으로 한두 개의 포트만 사용하며, 5편에서 설치할 때 안내되는 번호를 그대로 따르면 됩니다. 다만 이미 다른 서비스가 같은 번호를 사용 중이라면 충돌이 일어나므로, 컨테이너 매니저에서 사용 중인 포트를 한 번 훑어보는 것이 좋습니다.
환경변수(Environment Variables)는 컨테이너 안에서만 보이는 값입니다. OpenClaw의 API 키나 텔레그램 토큰은 반드시 환경변수로 분리합니다. 본문이나 설정 파일에 토큰을 평문으로 적어두면, 백업이나 폴더 공유 한 번에 외부로 새어 나갈 수 있습니다.
- API 키와 토큰은 모두 환경변수로 분리했는가
- 환경변수에 들어간 실제 값은 화면 캡처·블로그 본문에 절대 노출하지 않았는가
- 같은 NAS 안의 다른 컨테이너와 포트가 겹치지 않는가
hello-world 한 번 띄워보기
설치가 정상인지 확인하는 가장 간단한 방법은 hello-world 이미지를 한 번 띄워 보는 것입니다. Container Manager의 레지스트리에서 hello-world를 검색해 다운로드하고, 컨테이너 메뉴에서 실행하면 짧은 환영 메시지가 출력됩니다. 이 메시지가 보이면 NAS 위의 Docker 환경이 정상 작동한다는 뜻입니다.
진행 순서를 짧게 정리하면 다음과 같습니다.
- Container Manager → 레지스트리 →
hello-world검색. - “다운로드” → latest 태그 선택.
- 이미지 메뉴로 이동 → 받은 이미지 선택 → “실행”.
- 컨테이너 메뉴에서 방금 만든 컨테이너 선택 → “로그” 탭에서 환영 메시지 확인.
반대로 메시지가 보이지 않거나 컨테이너가 즉시 꺼진다면 사양·권한·네트워크 어딘가에 문제가 있습니다. 이 단계에서 미리 잡아두면, 5편에서 OpenClaw 설치를 진행할 때 같은 문제로 시간을 잃지 않습니다. 확인이 끝난 hello-world 컨테이너는 그대로 두지 말고 삭제해 NAS의 컨테이너 목록을 깔끔하게 정리해 둡니다.
외부 접속은 Tailscale·Reverse Proxy·VPN 먼저
집 밖에서 NAS의 OpenClaw를 쓰고 싶다면, 가장 먼저 떠올리는 방법이 포트포워딩입니다. 그러나 초보자에게는 권장되지 않습니다. 공유기에 구멍을 뚫는 방식이라 NAS가 곧바로 인터넷에 노출되며, 외부 스캔과 무차별 로그인 시도의 표적이 됩니다.
권장 순서는 다음과 같습니다.
- Tailscale — 무료 플랜만으로도 NAS와 휴대폰을 가상 사설망으로 묶어 외부 노출 없이 접근할 수 있습니다.
- Cloudflare Tunnel — 도메인이 있다면 외부 IP 노출 없이 NAS 서비스를 안전하게 공개할 수 있습니다.
- DSM Reverse Proxy + 인증서 — 시놀로지 자체 기능으로 HTTPS 종단을 만들고 사용자 인증을 강제할 수 있습니다.
- OpenVPN/WireGuard — NAS를 VPN 서버로 만들어 외부에서 사설망처럼 사용합니다.
- 포트포워딩 — 위 네 가지가 모두 어려울 때만, 그것도 강력한 인증과 함께.
여기에 더해 NAS 관리 페이지는 2단계 인증을 반드시 켭니다. 관리자 계정 이름도 기본값(admin)에서 다른 이름으로 바꿉니다. 이 두 가지만으로도 외부 침입 시도의 큰 부분을 막을 수 있습니다. 시놀로지 DSM에는 보안 어드바이저(Security Advisor)라는 점검 도구가 기본 탑재되어 있어, 한 번 실행해 두면 위험 항목을 항목별로 알려줍니다. OpenClaw를 올리기 전에 이 도구로 한 차례 점검을 받아두는 것을 권합니다.
참고로 OpenClaw가 사용하는 토큰은 외부 서비스(텔레그램, 모델 제공자 등)가 발급하는 자격증명입니다. 이 자격증명이 유출되면 NAS 본체가 아닌 그 외부 서비스가 도용될 수 있습니다. 따라서 본문 예시에 토큰값을 그대로 적어두거나, 화면 캡처에 토큰이 보이도록 두는 행위는 반드시 피해야 합니다. 본문에는 OPENCLAW_TG_TOKEN=xxxxxxxx처럼 자리표시자만 남기는 것이 원칙입니다.
자동 재시작과 백업 정책
NAS는 24시간 켜두는 장비입니다. 가끔 정전이나 펌웨어 업데이트로 NAS가 다시 부팅되면, 컨테이너도 자동으로 다시 살아나야 합니다. Container Manager에서는 컨테이너 설정 화면의 “자동 재시작(restart policy)” 옵션을 켜둡니다. 일반적으로 unless-stopped 또는 always 옵션이 권장됩니다. 두 옵션의 차이는 단순합니다. always는 사용자가 멈추라고 해도 다시 켜지며, unless-stopped는 사용자가 직접 멈추면 다시 켜지지 않습니다. 실수로 컨테이너를 멈추는 일이 거의 없다면 always가 안전합니다.
백업도 함께 설계합니다. 앞서 만든 /docker/openclaw/config, /docker/openclaw/data, /docker/openclaw/logs 세 폴더를 Hyper Backup이나 Snapshot Replication의 대상으로 잡아둡니다. 컨테이너 자체는 언제든 다시 만들 수 있지만, 이 세 폴더가 사라지면 OpenClaw가 학습한 자료와 설정이 함께 사라집니다.
두 도구의 역할은 다릅니다. Snapshot Replication은 NAS 안에서 빠르게 시간 되돌리기를 가능하게 합니다. 실수로 폴더를 지웠을 때 “1시간 전 상태”로 되돌리는 데 적합합니다. 반면 Hyper Backup은 외장 USB나 다른 NAS, 클라우드로 같은 자료를 한 번 더 복사해 두는 도구입니다. NAS 본체가 통째로 고장 나는 사건에 대비하려면 Hyper Backup이 필요합니다. 두 가지 모두를 동시에 운용하는 것이 가장 안전합니다.
초보자가 자주 하는 실수
마지막으로 초보자가 4편 단계에서 가장 자주 부딪히는 실수를 모았습니다. 설치 전에 한 번 훑어 두면 5편에서 시간을 크게 아낄 수 있습니다.
- 관리자 계정으로 컨테이너를 그대로 돌리는 경우 — 한 번 권한이 새면 NAS 전체가 위험해집니다. 전용 사용자 계정으로 분리합니다.
- 설정과 데이터를 컨테이너 안에만 두는 경우 — 컨테이너를 다시 띄우는 순간 자료가 사라집니다. 반드시 볼륨으로 NAS 폴더에 빼둡니다.
- 토큰을 본문이나 설정 파일에 평문으로 적어두는 경우 — 백업 한 번에 토큰이 외부로 빠질 수 있습니다. 환경변수로 분리합니다.
- 포트포워딩을 가장 먼저 켜는 경우 — 외부 스캔의 표적이 됩니다. Tailscale·Reverse Proxy·VPN을 먼저 검토합니다.
- 자동 재시작 옵션을 켜지 않는 경우 — 정전이나 펌웨어 업데이트 한 번에 컨테이너가 멈춰 있게 됩니다.
unless-stopped또는always를 켜둡니다. - 백업 대상에서 OpenClaw 폴더를 빠뜨리는 경우 — 컨테이너는 다시 만들 수 있지만 데이터는 다시 만들 수 없습니다. 세 폴더 모두 백업 대상에 포함합니다.
- 컨테이너 한 번 띄우고 끝내는 경우 — 한두 달 뒤 이미지 업데이트가 누락되어 보안 패치가 빠진 상태로 방치됩니다. 월 1회 이미지 갱신 일정을 잡아두는 편이 좋습니다.
마무리
4편에서는 OpenClaw가 들어올 자리를 NAS 안에 미리 정돈했습니다. Docker라는 그릇을 이해했고, OpenClaw용 폴더와 권한, 포트와 환경변수, 외부 접속 정책, 자동 재시작과 백업까지 함께 잡았습니다. 이 다섯 가지가 잡혀 있으면 5편의 설치는 의외로 간단하게 끝납니다.
시간을 아끼고 싶다면, 5편으로 넘어가기 전에 위 체크리스트를 한 번 더 점검해 두는 것을 권합니다.
다음 5편에서는 OpenClaw가 무엇이고, NAS 안에서 어떻게 움직이는지 그 구조를 살펴봅니다. 본격적인 설치 화면에 들어가기 전, OpenClaw가 다루는 모듈과 데이터 흐름을 한 장의 지도로 정리합니다.
이전 글 보기
- 시놀로지 NAS로 개인 AI 비서 만들기 1편 — 내 자료를 기억하는 AI의 시작
- 시놀로지 NAS로 개인 AI 비서 만들기 2편 — AI가 읽을 자료 창고 만들기
- 시놀로지 NAS로 개인 AI 비서 만들기 3편 — AI가 잘 읽는 파일 정리법
자주 묻는 질문
Q1. Docker를 모르면 OpenClaw 설치는 어렵나요?
이번 4편 정도의 개념만 이해하셔도 5편 설치는 무리 없이 따라갈 수 있습니다. 깊은 이해가 아니라 위치 감각이면 충분합니다.
Q2. RAM 2GB 모델에서도 가능한가요?
가벼운 시험은 가능합니다. 다만 동시에 다른 컨테이너를 돌리거나 자료가 많아지면 응답이 느려질 수 있습니다. 본격 사용은 4GB 이상을 권장합니다.
Q3. 포트포워딩 없이도 외부에서 사용할 수 있나요?
가능합니다. Tailscale, Cloudflare Tunnel, DSM Reverse Proxy 중 하나를 먼저 검토하시면 외부 노출 없이 안전하게 접속할 수 있습니다.
Q4. 컨테이너가 꺼지면 자료가 사라지나요?
볼륨으로 분리해둔 자료는 컨테이너가 꺼지거나 삭제되어도 그대로 남습니다. 그래서 OpenClaw 설정과 데이터는 반드시 볼륨에 둬야 합니다.
'나만의AI > synology' 카테고리의 다른 글
| 시놀로지 NAS로 개인 AI 비서 만들기 6편 — Container Manager에 OpenClaw 설치하기 (2) | 2026.05.09 |
|---|---|
| 시놀로지 NAS로 개인 AI 비서 만들기 5편 — OpenClaw는 무엇이고 어떻게 움직이는가 (1) | 2026.05.09 |
| 시놀로지 NAS로 개인 AI 비서 만들기 3편 — AI가 잘 읽는 파일 정리법 (1) | 2026.05.09 |
| 시놀로지 NAS로 개인 AI 비서 만들기 2편 — AI가 읽을 자료 창고 만들기 (1) | 2026.05.09 |
| 시놀로지 NAS로 개인 AI 비서 만들기 1편 — 내 자료를 기억하는 AI의 시작 (1) | 2026.05.09 |