聽完整配置)
HolyClaude在群暉/QNAP NAS上部署SMB/CIFS掛載避坑與文件監(jiān)聽完整配置【免費下載鏈接】HolyClaudeAI coding workstation: Claude Code web UI 8 AI CLIs headless browser 50 tools項目地址: https://gitcode.com/gh_mirrors/ho/HolyClaude在群暉Synology或威聯(lián)通QNAPNAS上部署HolyClaude核心就三件事用 Docker Compose 一鍵啟動、把數(shù)據(jù)目錄規(guī)劃好、避開SMB/CIFS 掛載的四個經(jīng)典大坑文件監(jiān)聽失效、SQLite 鎖、符號鏈接、權限靜默失敗。HolyClaude 官方平臺支持表中明確標注 Synology / QNAP 為 ? 完全支持NAS 場景開箱即用。一、為什么 NAS 是 HolyClaude 的理想落腳點HolyClaude 是一個AI 編碼工作站容器內置 Claude Code Web UICloudCLI 8 個 AI CLI 無頭瀏覽器 Chromium 50 開發(fā)工具docker compose up一條命令就能跑。它同時提供amd64 和 arm64兩個架構因此你的 NAS 類型建議鏡像說明x86_64Intel/AMDcoderluii/holyclaude:latestfull原生性能ARM 機型Intel N100/ARM 板卡latest或slimarm64 原生構建存儲空間緊張coderluii/holyclaude:slim精簡鏡像缺的工具 Claude 會按需秒裝 NAS 的容器管理器如群暉 Container Manager展示的是解壓后的鏡像大小會比 Docker Hub 上標注的壓縮體積大屬正?,F(xiàn)象。二、目錄規(guī)劃NAS 上最容易踩的坑先排掉在群暉上建議把 Compose 項目放在本地存儲卷如/volume1/docker/holyclaude目錄結構如下/volume1/docker/holyclaude/ ├── docker-compose.yaml # 配置文件 ├── data/claude/ # 憑據(jù)、會話、記憶 —— 重建容器不丟 └── workspace/ # 你的代碼項目?? 第一條黃金法則SQLite 數(shù)據(jù)庫永遠不要放在網(wǎng)絡共享上。CloudCLI 的賬號數(shù)據(jù)庫/home/claude/.cloudcli默認存在容器本地存儲就是為了避開 CIFS 不支持文件級鎖定導致的database is locked錯誤如果你希望賬號在重建容器后保留請用Docker 命名卷cloudcli-data且必須落在 Docker 引擎的本地文件系統(tǒng)上——不要使用指向 NAS 共享/NFS/SMB 的卷驅動或遠程選項你自己項目里的.sqlite文件同理放在/workspace的 NAS 路徑上也會頻繁報鎖錯誤。完整的持久化對照表見 README.md 的 Data Persistence 章節(jié)網(wǎng)絡共享注意事項見 docs/troubleshooting.md 的 SQLite database is locked 小節(jié)。三、SMB/CIFS 掛載四大坑與對策當你的data/claude或workspace落在 SMB/CIFS 掛載點或 Hyper-V 的 Samba 共享時會遇到以下四個坑。官方排障文檔 docs/troubleshooting.md 的 SMB/CIFS Gotchas 章節(jié)有一句話總結#坑癥狀對策1??不支持 inotify熱重載失效、dev server 感知不到文件變化開啟輪詢監(jiān)聽見下一節(jié)兩個變量2??SQLite 鎖失敗反復報database is lockedSQLite 一律放本地存儲別放共享3??默認無符號鏈接npm 全局安裝、Python.local可能異常掛載選項加mfsymlinksHolyClaude 因此把.npm、.local保留在容器本地不要把這兩個目錄掛到網(wǎng)絡共享4??chmod/chown 靜默失效容器內改權限看似成功實際無效在 NAS 共享設置或掛載選項uid、gid、file_mode、dir_mode層面解決或讓PUID/PGID與共享屬主一致 在群暉/QNAP/SMB 掛載上從容器內部執(zhí)行chmod/chown可能被宿主機文件系統(tǒng)直接忽略——權限問題請優(yōu)先從NAS 側解決而不是在容器里反復試。四、文件監(jiān)聽完整配置兩個環(huán)境變量搞定SMB/CIFS 不支持inotify這是 NAS 上改了文件沒反應的根本原因。HolyClaude 提供了兩個專用開關完整說明見 docs/configuration.md變量設置值作用CHOKIDAR_USEPOLLING1讓 Node.js 的文件監(jiān)聽器chokidar改用輪詢WATCHFILES_FORCE_POLLINGtrue讓 Python 生態(tài)如 uvicorn/vite 的 watchfiles改用輪詢在 Compose 文件的environment中加入模板參考 docker-compose.full.yamlenvironment: - TZAsia/Shanghai - PUID1026 # NAS 上運行 Docker 的用戶 UID - PGID100 - CHOKIDAR_USEPOLLING1 - WATCHFILES_FORCE_POLLINGtrue只在你真正使用網(wǎng)絡掛載時才開啟——輪詢比 inotify 更耗 CPU本地盤上請保持注釋狀態(tài)。五、權限設置PUID/PGID 一步到位NAS 上最常見的permission denied本質是容器內用戶 ID 與 NAS 上目錄屬主不匹配在 NAS 上查看 Docker 運行用戶的 UID/GID群暉可查用戶或docker exec一個臨時容器id在 Compose 中設置PUID/PGID與之一致由于容器內的chown在 CIFS 上可能失效直接在NAS 共享/文件夾權限設置里把data/claude和workspace屬主改對比在容器里改更可靠。另外兩條避坑提醒來自 docs/troubleshooting.md不要掛載整個/home或/home/claude目錄——會遮擋鏡像自帶的claude可執(zhí)行文件導致claude: command not found群暉上若啟動時報Too many levels of symbolic links先用官方提供的只讀診斷腳本定位鏈接環(huán)見排障文檔對應小節(jié)再處理切勿直接刪數(shù)據(jù)。六、最快部署步驟在 NAS 上創(chuàng)建/volume1/docker/holyclaude建好data/claude、workspace子目錄放入 Compose 文件新手直接用 docker-compose.yaml 精簡模板需要全部選項用 docker-compose.full.yaml啟動并驗證docker compose up -d docker logs -f holyclaude # 看到 CloudCLI 啟動成功即可瀏覽器打開http://NAS_IP:3001創(chuàng)建 CloudCLI 賬號約 10 秒用你的 Anthropic 賬號登錄——完成 ?改完掛載或權限后用熱重載驗證文件監(jiān)聽是否生效不生效時檢查上一節(jié)的兩個輪詢變量。七、參考文檔資料路徑主文檔平臺支持/環(huán)境變量全表/持久化README.md排障指南含 SMB/CIFS 專屬章節(jié)與群暉符號鏈接診斷docs/troubleshooting.md配置參考SMB/CIFS 變量說明docs/configuration.md內置給 Claude 的運維備忘NAS 場景要點config/claude-memory-full.md?NAS 部署一句話總結數(shù)據(jù)目錄放本地盤、SQLite 不碰網(wǎng)絡共享、CHOKIDAR_USEPOLLING1WATCHFILES_FORCE_POLLINGtrue開啟輪詢監(jiān)聽、PUID/PGID與 NAS 用戶對齊——四步做完HolyClaude 在群暉/QNAP 上就是一鍵可用的 7×24 AI 編碼工作站?!久赓M下載鏈接】HolyClaudeAI coding workstation: Claude Code web UI 8 AI CLIs headless browser 50 tools項目地址: https://gitcode.com/gh_mirrors/ho/HolyClaude創(chuàng)作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考