# Hermes Agent Docker 安裝指南 ### 按照本指南前置條件: - Docker - 有 [openroute](https://openrouter.ai/) api key(有先儲值 credits) - 有 Discord 帳號 官方文件:https://hermes-agent.nousresearch.com/docs/user-guide/docker ## 開啟終端機,執行以下步驟: 1. 建立資料夾 `mkdir -p ~/.hermes` 2. 拉取官方 image,跑安裝及設定 `docker run -it --rm \ -v ~/.hermes:/opt/data \ nousresearch/hermes-agent setup` - 安裝完畢後,選擇 Quick setup ![image](https://hackmd.io/_uploads/SydfPCGkGx.png) - 選擇 AI Provider,我使用的是 [OpenRouter](https://openrouter.ai/),可自由選擇自己有的 Provider: ![image](https://hackmd.io/_uploads/HysSwRfJMl.png) - 複製貼上 Key 後 Enter ![image](https://hackmd.io/_uploads/BkvcD0G1Mx.png) - 選擇模型,可以看價目表選擇自己喜歡的,我是選擇 `qwen/qwen3.6-35b-a3b` ![image](https://hackmd.io/_uploads/ryLTDCfkGx.png) - 選 `Keep current(local)` ![image](https://hackmd.io/_uploads/SJ5ZO0fkzx.png) - 設定 message 平台,選 `Set up messaging now` ![image](https://hackmd.io/_uploads/B1I4_0fJzl.png) - 輸入你想串接的代號並 Enter,我自己是用 Discord,Enter 後它會勾起來,再繼續 Enter ![image](https://hackmd.io/_uploads/ry8PdAMyfg.png) ![image](https://hackmd.io/_uploads/S1FYO0MyMx.png) - 接下來要申請 Discord bot,到這個地方登入自己的 Discord 帳號:https://discord.com/developers/home ,並建立一台自己的 Hermes Agent Bot ![image](https://hackmd.io/_uploads/HJbgFCzyMx.png) - 左側導覽列選擇「機器人」,右側捲動至如圖處,將三個開關都打開 ![image](https://hackmd.io/_uploads/BJ8EYRM1zg.png) - 往上捲動到「權杖」,點擊「重設權杖」,進行驗證後會得到 token,複製貼上到終端機 ![image](https://hackmd.io/_uploads/BJYDY0GJfl.png) ![image](https://hackmd.io/_uploads/Hy4hFAM1zx.png) - 到 Discord 中可以建立一個自己的私人伺服器,在右側列表對自己按右鍵,點擊複製使用者 ID,然後貼到終端機 ![image](https://hackmd.io/_uploads/HkfM9Rfyfx.png) ![image](https://hackmd.io/_uploads/HJL4cCf1Mx.png) - 回到 Discord 開發者平台,左側選單選擇「OAuth2」,如圖勾選 bot,再往下捲動勾選如圖權限(如果之後有特殊要求也可以回來這裡勾選你要的權限,再重新讓 Bot 加入伺服器) ![image](https://hackmd.io/_uploads/H1O59AfJMg.png) ![image](https://hackmd.io/_uploads/SkjJs0GJze.png) - 往下捲動至 URL 處,點擊右側複製,另開新分頁貼上,讓機器人加入你的伺服器 ![image](https://hackmd.io/_uploads/HJEPjAfJGg.png) ![image](https://hackmd.io/_uploads/SJ_ji0f1Ge.png) - 在伺服器找到 Bot,私訊他(現在他還不會理你) ![image](https://hackmd.io/_uploads/H1FY30fkGg.png) - 在左側列表對他按右鍵,點擊複製頻道 ID,貼到終端機 ![image](https://hackmd.io/_uploads/B14EnAzkfe.png) ![image](https://hackmd.io/_uploads/HJI2nRfkMg.png) - 現在已經設定好了,輸入 n 退出 ![image](https://hackmd.io/_uploads/rJwRnAzyfl.png) - 接下來輸入這個指令讓他開啟 gateway 模式 `docker run -d \ --name hermes \ --restart unless-stopped \ --memory=4g --cpus=2 \ --shm-size=1g \ -v ~/.hermes:/opt/data \ -p 8642:8642 \ nousresearch/hermes-agent gateway run` - 輸入這個指令看有沒有成功運作 `docker logs hermes --tail 20` - 到 Discord 上面私訊他,有成功的話他會對你的訊息按 :eyes: ,然後回應你之後 :white_check_mark: - 接著參考這個 [workaround](https://github.com/NousResearch/hermes-agent/issues/15697#issuecomment-4362644216)(感謝強者我朋友 clode 大神) 讓 hermes 可以在 docker 內部使用瀏覽器 ~~- 接下來用這個指令拿 playwright 安裝 chromium `docker exec hermes /opt/hermes/node_modules/.bin/playwright install chromium`~~ ~~- 安裝後 `docker restart hermes`~~ ~~- 給他你想要讓他看的網頁,跟他說你有用 `docker exec hermes /opt/hermes/node_modules/.bin/playwright install chromium` 這個指令安裝 chromium,叫他用瀏覽器看而不是用 curl 呼叫,不過這裡可能需要看點運氣...觀察他是不是真的用瀏覽器開,如果不是打斷他~~ - 接下來就自由運用吧!! ### 額外 mermer ~~有跟朋友研究一晚上,官方 [docker file](https://github.com/NousResearch/hermes-agent/blob/af981227937f54ccd621673f1e86ee196134a005/Dockerfile#L53) 有使用`npx playwright install --with-deps chromium --only-shell` 這個指令安裝 chromium,但是實際啟動的時候叫 hermes 用瀏覽器開他會說環境沒有瀏覽器,所以才使用 `docker exec hermes /opt/hermes/node_modules/.bin/playwright install chromium` 這個指令裝,至於 hermes 找不到瀏覽器是目前已知的 bug ,社群上有人在嘗試修復這個問題,但總而言之我是使用上面的指令裝完才能用...有興趣的人可以自己看看~~