Ai Install Hermes In Incus

From wiki karavi
Revision as of 21:27, 27 August 2026 by Karavi (talk | contribs) (Created page with "= راهنمای جامع صفر تا صد: نصب Incus، راه‌اندازی کانتینر Ubuntu و داشبورد وب Hermes Agent = == بخش اول: نصب و راه‌اندازی Incus روی سرور اصلی (Host) == # ۱. نصب پیش‌نیازها و افزودن مخزن رسمی Zabbly sudo apt-get update sudo apt-get install -y curl gpg sudo mkdir -p /etc/apt/keyrings/ curl -fsSL https://pkgs.zabbly.com/key.asc -o /etc/apt/keyrings/zabbly.asc sud...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

راهنمای جامع صفر تا صد: نصب Incus، راه‌اندازی کانتینر Ubuntu و داشبورد وب Hermes Agent

بخش اول: نصب و راه‌اندازی Incus روی سرور اصلی (Host)

  1. ۱. نصب پیش‌نیازها و افزودن مخزن رسمی Zabbly

sudo apt-get update sudo apt-get install -y curl gpg sudo mkdir -p /etc/apt/keyrings/ curl -fsSL https://pkgs.zabbly.com/key.asc -o /etc/apt/keyrings/zabbly.asc

sudo sh -c 'cat <<EOF > /etc/apt/sources.list.d/zabbly-incus-stable.sources Enabled: yes Types: deb URIs: https://pkgs.zabbly.com/incus/stable Suites: $(. /etc/os-release && echo ${VERSION_CODENAME}) Components: main Architectures: $(dpkg --print-architecture) Signed-By: /etc/apt/keyrings/zabbly.asc EOF'

  1. ۲. نصب بسته‌های Incus و فعال‌سازی

sudo apt-get update sudo apt-get install -y incus incus-ui-canonical sudo usermod -aG incus-admin $USER newgrp incus-admin

  1. ۳. مقداردهی اولیه استوریج و شبکه Incus

incus admin init --auto

  1. ۴. ساخت کانتینر اختصاصی Ubuntu 24.04

incus launch images:ubuntu/24.04 incus-ubuntu-hermes

  1. ۵. مشاهده لیست و وضعیت کانتینرها

incus list

  1. ۶. ورود مستقیم به محیط شل (Bash) کانتینر با دسترسی Root

incus exec incus-ubuntu-hermes -- bash


بخش دوم: مراحل داخل کانتینر (incus-ubuntu-hermes)

  1. ۱. به‌روزرسانی و نصب ابزارهای پایه و ضروری

apt update && apt install -y curl git tar xz-utils socat python3 nano

  1. ۲. نصب رسمی Hermes Agent

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash source ~/.bashrc

  1. ۳. تولید هش امن رمز عبور با الگوریتم scrypt اختصاصی Hermes
  2. (به جای PASSWORD_HERE رمز دلخواه خود را بگذارید)

HASH=$(/root/.hermes/bin/uv run python - << 'EOF' import sys sys.path.insert(0, '/usr/local/lib/hermes-agent') from plugins.dashboard_auth.basic import hash_password print(hash_password("Password!2345")) EOF )

  1. ۴. تنظیم دامین و احراز هویت در فایل config.yaml

mkdir -p /root/.hermes sed -i '/^dashboard:/,$d' /root/.hermes/config.yaml

cat << EOF >> /root/.hermes/config.yaml

dashboard:

 public_url: "http://s5.sovi.ir:9119"
 basic_auth:
   username: "karavi"
   password_hash: "$HASH"

EOF

  1. ۵. ایجاد سرویس خودکار systemd برای وب‌سرور Hermes

cat << 'EOF' > /etc/systemd/system/hermes-dashboard.service [Unit] Description=Hermes Agent Web Dashboard After=network.target

[Service] Type=simple User=root WorkingDirectory=/root Environment="PATH=/usr/local/bin:/root/.hermes/bin:/usr/local/share/uv/bin:/usr/bin:/bin" ExecStart=/usr/local/bin/hermes dashboard --host 127.0.0.1 --port 9119 --no-open --skip-build Restart=always RestartSec=5 StandardOutput=journal StandardError=journal

[Install] WantedBy=multi-user.target EOF

  1. ۶. ایجاد سرویس فوروارد پورت شبکه (socat)

cat << 'EOF' > /etc/systemd/system/hermes-proxy.service [Unit] Description=Expose Hermes Dashboard to Network After=hermes-dashboard.service

[Service] Type=simple ExecStart=/usr/bin/socat TCP4-LISTEN:9120,fork,reuseaddr TCP4:127.0.0.1:9119 Restart=always RestartSec=3

[Install] WantedBy=multi-user.target EOF

  1. ۷. فعال‌سازی و استارت سرویس‌ها داخل کانتینر

systemctl daemon-reload systemctl enable --now hermes-dashboard hermes-proxy

  1. ۸. خروج از کانتینر به هاست اصلی

exit


بخش سوم: پورت فورواردینگ روی سرور اصلی (Host)

  1. ۱. هدایت پورت 9119 سرور اصلی به پورت 9120 کانتینر از طریق پروکسی بومی Incus

incus config device add incus-ubuntu-hermes hermes-web-port proxy listen=tcp:0.0.0.0:9119 connect=tcp:127.0.0.1:9120

  1. ۲. بررسی وضعیت پورت روی هاست

ss -tulpn | grep 9119


بخش چهارم: دسترسی به داشبورد و مدیریت

  • آدرس در مرورگر: http://s5.sovi.ir:9119
  • نام کاربری (Username): karavi
  • رمز عبور (Password): رمز عبور تنظیم‌شده در مرحله ۳

دستورات مفید مدیریتی:

  • ورود مجدد به کانتینر: incus exec incus-ubuntu-hermes -- bash
  • مشاهده لاگ زنده داشبورد: journalctl -u hermes-dashboard -f
  • ریستارت داشبورد: systemctl restart hermes-dashboard
  • متوقف کردن کانتینر: incus stop incus-ubuntu-hermes
  • روشن کردن کانتینر: incus start incus-ubuntu-hermes