WSL2에서 Hermes Desktop + Dashboard/Gateway를 systemd로 운영하는 방식 문의
2
3 asked
계속 반복적으로 나타나는 에러들을 정리해보니 게이트웨이 쪽이네요. AI와 수도없이 대화하면서 내가 뭘 모르는지 잘못한건지 체크해봤는데요.. 그 내용을 정리해봤어요.
Windows + WSL2 Ubuntu 환경에서 Hermes를 사용하고 있습니다.
Windows에서는 Hermes Desktop을 실행하고, WSL2 안에서는 Hermes CLI로 Dashboard/Gateway를 systemd --user 서비스로 실행하고 있습니다.
현재 목표는 다음과 같습니다.
WSL2에서 Hermes Dashboard/Gateway를 상시 실행
Windows Hermes Desktop에서 WSL의 Dashboard/Gateway에 접속
sophie프로필 전용 Dashboard/Webhook 안정 운영PC 재시작 또는 터미널 종료 후에도 서비스가 안정적으로 유지되도록 구성
환경은 다음과 같습니다.
Windows + WSL2 Ubuntu
WSL systemd 사용 중
Hermes Desktop 사용
Hermes CLI 사용
여러 Hermes profile 사용 중
default,sophie,ada,ethan,mia,noah,oliver,sam
Dashboard는
hermes-dashboard.serviceGateway는
hermes-gateway-sophie.service같은 profile별 user service로 운영 중
1. WSL2 user systemd / D-Bus 문제
가끔 아래 명령을 실행하면 user systemd 관련 오류가 발생합니다.
hermes -p sophie gateway restart
오류 메시지는 다음과 같습니다.
✗ User systemd not reachable:
User systemd control sockets are missing even though linger is enabled.
systemctl --user cannot reach the user D-Bus session in this shell.
현재 linger는 켜져 있습니다.
loginctl show-user "$USER" -p Linger -p State -p RuntimePath
결과:
RuntimePath=/run/user/1000
State=active
Linger=yes
하지만 문제가 발생할 때는 systemctl --user가 user D-Bus session에 접근하지 못하는 상태가 됩니다.
아래 명령을 실행하면 일시적으로 복구됩니다.
sudo systemctl restart user@$(id -u).service
그 후에는 다시 아래 명령이 정상 작동합니다.
hermes -p sophie gateway restart
정상 출력 예시:
↻ Updated gateway user service definition to match the current Hermes install
⏳ User service restarting gracefully...
✓ User service restarted
질문입니다.
WSL2 Ubuntu에서
linger=yes인데도systemctl --user가 user D-Bus에 접근하지 못하는 일이 자주 발생할 수 있나요?sudo systemctl restart user@$(id -u).service로 복구되는 경우, 근본 원인은 user systemd runtime socket 문제로 봐도 될까요?Hermes gateway를 WSL2에서 상시 운영할 때
systemd --user방식이 적절한가요?WSL 환경에서는 foreground 실행, Windows 시작 스크립트, 작업 스케줄러 방식이 더 안정적인지 궁금합니다.
2. Windows Hermes Desktop과 WSL Dashboard 연결 방식
현재 구조는 다음과 같습니다.
Windows
- Hermes Desktop 실행
WSL2 Ubuntu
- Hermes Dashboard / Gateway 실행
- Windows Hermes Desktop이 WSL의 Dashboard에 접속
Hermes Desktop에서는 Gateway 설정에 다음 값을 사용하고 있습니다.
Remote gateway
Remote URL: http://127.0.0.1:9119
Session token: 비어 있음
WSL에서 Dashboard는 현재 아래처럼 실행 중입니다.
hermes -p sophie dashboard --isolated --host 127.0.0.1 --port 9119 --no-open
Windows에서도 접근은 됩니다.
powershell.exe -NoProfile -Command "try { (Invoke-WebRequest -UseBasicParsing http://127.0.0.1:9119 -TimeoutSec 3).StatusCode } catch { $_.Exception.Message }"
결과:
200
다만 Hermes Desktop에서 가끔 다음과 같은 메시지가 나왔습니다.
Remote gateway incomplete
Enter a remote URL and session token before switching to remote.
또는:
Hermes couldn't start
Your remote gateway session has expired. Open Settings → Gateway and click "Sign in" again.
질문입니다.
Windows Hermes Desktop에서 WSL2의 Hermes Dashboard/Gateway에 붙는 경우
Remote gateway + http://127.0.0.1:9119구성이 맞나요?같은 PC 안에서 Windows → WSL로 접속하는 경우에도
Local gateway가 아니라Remote gateway로 보는 것이 맞나요?Dashboard가
127.0.0.1loopback bind이고 별도 인증이 없다면 Session token을 비워두는 것이 맞나요?Desktop에서 session token 또는 session expired 메시지가 뜨는 것은 실제 gateway 프로세스 문제라기보다 Desktop의 remote gateway session/auth 상태 문제로 보면 될까요?
3. Dashboard host bind: 127.0.0.1 vs 0.0.0.0
처음에는 Windows Desktop에서 접속을 안정화하려고 Dashboard를 0.0.0.0으로 실행했습니다.
hermes dashboard --host 0.0.0.0 --port 9119 --no-open
하지만 이후 sophie 전용 isolated dashboard를 실행할 때는 아래 로그와 함께 거부되었습니다.
Refusing to bind dashboard to 0.0.0.0 — the auth gate engages on non-loopback binds, but no auth providers are registered.
There is no unauthenticated public-bind option — to keep it local, bind 127.0.0.1 and tunnel in (SSH / Tailscale).
그래서 현재는 아래처럼 127.0.0.1로 실행하고 있습니다.
hermes -p sophie dashboard --isolated --host 127.0.0.1 --port 9119 --no-open
현재 포트 상태는 정상입니다.
ss -ltnp | grep ':9119'
예시:
LISTEN 127.0.0.1:9119 users:(("hermes",pid=...,fd=...))
질문입니다.
Windows Desktop에서 같은 PC의 WSL Dashboard에 접속하는 용도라면
--host 127.0.0.1이 권장되는 방식인가요?--host 0.0.0.0에서 auth provider가 없으면 Dashboard가 실행을 거부하는 것이 정상 동작인가요?WSL 외부나 다른 기기에서 접근하려면 basic auth/OAuth 설정 또는 SSH/Tailscale 터널을 사용하는 것이 맞나요?
4. profile별 Dashboard/Webhook 분리 문제
처음에는 Dashboard 화면에서 magma-inquiry webhook이 보였는데, CLI에서 sophie 프로필로 테스트하면 실패했습니다.
hermes -p sophie webhook test magma-inquiry --payload '{"inquiry":{"message":"test"}}'
오류:
No subscription named 'magma-inquiry'
확인해보니 해당 webhook이 sophie가 아니라 default 프로필에 생성되어 있었습니다.
처음에는 아래 명령이면 sophie 전용 Dashboard가 실행된다고 이해했습니다.
hermes -p sophie dashboard --host 127.0.0.1 --port 9119
하지만 실제로는 profile이 명확히 분리되지 않는 것 같았고, 이후 --isolated 옵션을 사용했습니다.
현재 systemd override는 다음과 같습니다.
[Service]
ExecStart=
ExecStart=/home/minam/.local/bin/hermes -p sophie dashboard --isolated --host 127.0.0.1 --port 9119 --no-open
현재는 아래 상태입니다.
hermes -p sophie webhook list
sophie에는 magma-inquiry가 있습니다.
hermes -p default webhook list
default에는 webhook이 없습니다.
Webhook 테스트도 성공했습니다.
hermes -p sophie webhook test magma-inquiry --payload '{"inquiry":{"message":"재시작 후 최종 확인입니다."}}'
결과:
Response (202): accepted
Slack에도 메시지가 도착했습니다.
질문입니다.
sophie프로필 전용 Dashboard/Webhook을 운영하려면--isolated옵션을 사용하는 것이 맞나요?hermes -p sophie dashboard만으로 실행하면 화면은sophie처럼 보여도 webhook 저장 위치가default가 될 수 있나요?profile별 webhook 충돌을 피하려면 profile마다 isolated dashboard를 쓰는 것이 권장되나요?
5. 현재 사용 중인 구성
현재 최종적으로 사용 중인 구성은 다음과 같습니다.
hermes -p sophie dashboard --isolated --host 127.0.0.1 --port 9119 --no-open
systemd user service override:
[Service]
ExecStart=
ExecStart=/home/minam/.local/bin/hermes -p sophie dashboard --isolated --host 127.0.0.1 --port 9119 --no-open
확인된 상태는 다음과 같습니다.
hermes-dashboard.serviceactive127.0.0.1:9119LISTEN 정상Windows에서
http://127.0.0.1:9119접근 시 HTTP 200브라우저에서 Webhooks 화면 접근 가능
magma-inquiry는sophie프로필에만 존재default에는 webhook 없음webhook test 성공
Slack 메시지 도착 확인
hermes-gateway-sophie.service는 enabledloginctl결과RuntimePath=/run/user/1000,State=active,Linger=yes
질문입니다.
이 구성이 Windows Hermes Desktop + WSL2 Ubuntu + systemd user service 조합에서 권장되는 방식에 가까운가요?
장기적으로 안정적으로 운영하려면 추가로 점검해야 할 설정이 있을까요?
Windows 재부팅 후 WSL이 자동으로 시작되지 않는다면, Windows 작업 스케줄러로 WSL을 한 번 깨워서 user systemd service가 올라오게 하는 방식이 적절한가요?
여러 profile gateway와 하나의 isolated dashboard를 동시에 운영할 때 주의해야 할 점이 있다면 알려주시면 감사하겠습니다.
Answer 0
토큰 폭탄 문제
0
24
1
슬랙 연결하고 설정할 떄 CLI에서 계속 반복적으로..
0
16
1
openrouter는 강의가 있었는데..ㅠㅠ 어디갔지요
0
23
3
hostinger vps 세팅 부분 대시보드 접속 전 id, pw
0
20
1
slack과 터미널과의 실행 차이(with openrouter api)
0
19
1
저도 슬랙과 텔레그램 중복 토큰 에러가 납니다.
0
25
3
커리큘럼이바뀐거같은데 맞나요?
0
30
1
Wave에서 Hostinger VPS 연결
0
30
1
텔레그램 연 동 관련한 질문사항
0
29
2
unit 1.3 화면이 안보여요 ㅠㅠ
0
50
4
로컬 환경의 헤르메스와 텔레그램 통신의 개념
0
29
2
Windows11 home OS사용 Hyper-v 옵션 안보임
0
32
2
터미널에서 헤르메스를 키면 소피가 대답을 하는데, 텔레그램은..
0
35
3
터미널에서 슬랙 텔레그램 연결했는데
0
53
5
vps활용해서 하는데 너무 지금이랑 달라서 하나도 모르겠어요...
0
35
2
ada env 질문있습니다.
0
34
1
hermes desktop / hermes model
0
43
3
세션생성질문
0
33
2
WSL에서 멀티프로필 gateway install 시 실패 문제
0
38
2
슬랙 프로필 변경 질문
0
47
2
올리버 에게 채용을 맡기다..에서 문의
0
43
1
슬랙 스레드 대답
0
43
3
github 세팅 자체를 github desktop을 사용해도 되나요?
0
35
1
헤르메스와 코덱스 연결 관련
0
51
1

