compose.desktops.yaml 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. # Generated from compose.yaml and deploy/compose-desktops.json.
  2. name: hermes-yaoyao
  3. services:
  4. web:
  5. build:
  6. context: .
  7. dockerfile: Dockerfile
  8. image: "${HERMES_YAOYAO_IMAGE:-yaoyao:local}"
  9. restart: unless-stopped
  10. init: true
  11. read_only: true
  12. security_opt:
  13. - no-new-privileges:true
  14. cap_drop:
  15. - ALL
  16. ports:
  17. - "${HERMES_YAOYAO_BIND_ADDRESS:-127.0.0.1}:${HERMES_YAOYAO_PUBLISHED_PORT:-15300}:15300"
  18. extra_hosts:
  19. - "host.docker.internal:host-gateway"
  20. environment:
  21. NODE_ENV: production
  22. HERMES_YAOYAO_HOST: 0.0.0.0
  23. HERMES_YAOYAO_PORT: 15300
  24. HERMES_YAOYAO_UPSTREAM: "${HERMES_YAOYAO_UPSTREAM:-http://host.docker.internal:9119}"
  25. # Permit localhost access when the published host port differs from the
  26. # container's fixed 15300 port; configured public host names remain opt-in.
  27. HERMES_YAOYAO_ALLOWED_HOSTS: "localhost,127.0.0.1,${HERMES_YAOYAO_ALLOWED_HOSTS:-}"
  28. HERMES_YAOYAO_ALLOW_INSECURE_LAN: "1"
  29. HERMES_YAOYAO_SUPERVISE_DASHBOARD: "0"
  30. HERMES_YAOYAO_LOCAL_VM_HOST: "runner"
  31. HERMES_YAOYAO_COMPOSE_DESKTOPS: "[{\"id\":\"160fe7cd-e530-4ac5-a97f-26c19a362b11\",\"name\":\"共享桌面 1\",\"socketPath\":\"/run/yaoyao-desktops/desktop-1/desktop.sock\",\"imageKey\":\"standard\"},{\"id\":\"eba5caaf-744e-4f27-bcdd-1f1f35d05a42\",\"name\":\"共享桌面 2\",\"socketPath\":\"/run/yaoyao-desktops/desktop-2/desktop.sock\",\"imageKey\":\"standard\"}]"
  32. HERMES_YAOYAO_CHAT_CACHE_MODE: "${HERMES_YAOYAO_CHAT_CACHE_MODE:-prefer-local}"
  33. HERMES_YAOYAO_RELEASE_SOURCE: "${HERMES_YAOYAO_RELEASE_SOURCE:-https://github.com/Lsamien/yaoyao.git}"
  34. HERMES_YAOYAO_HOME: /home/node/.yaoyao
  35. HERMES_YAOYAO_APNS_KEY_FILE: "${HERMES_YAOYAO_APNS_KEY_FILE:-}"
  36. HERMES_YAOYAO_APNS_KEY_ID: "${HERMES_YAOYAO_APNS_KEY_ID:-}"
  37. HERMES_YAOYAO_APNS_TEAM_ID: "${HERMES_YAOYAO_APNS_TEAM_ID:-}"
  38. HERMES_YAOYAO_APNS_TOPIC: "${HERMES_YAOYAO_APNS_TOPIC:-}"
  39. volumes:
  40. - yaoyao-data:/home/node/.yaoyao
  41. - desktop-1-ipc:/run/yaoyao-desktops/desktop-1:ro
  42. - desktop-2-ipc:/run/yaoyao-desktops/desktop-2:ro
  43. tmpfs:
  44. - /tmp:mode=1777
  45. desktop-1:
  46. image: "${YAOYAO_DESKTOP_IMAGE:-hermes-yaoyao-desktop:0.4.0}"
  47. build:
  48. context: ./deploy/computer
  49. dockerfile: Dockerfile
  50. hostname: desktop-1
  51. extra_hosts:
  52. - "desktop-1:127.0.0.1"
  53. init: true
  54. restart: unless-stopped
  55. network_mode: none
  56. shm_size: 512m
  57. mem_limit: 4g
  58. cpus: 2
  59. pids_limit: 512
  60. cap_drop:
  61. - ALL
  62. cap_add:
  63. - SETUID
  64. - SETGID
  65. - CHOWN
  66. - KILL
  67. environment:
  68. YAOYAO_COMPOSE_DESKTOP_ID: "160fe7cd-e530-4ac5-a97f-26c19a362b11"
  69. volumes:
  70. - desktop-1-workspace:/home/cua/workspace
  71. - desktop-1-ipc:/run/yaoyao-private/bridge
  72. desktop-2:
  73. image: "${YAOYAO_DESKTOP_IMAGE:-hermes-yaoyao-desktop:0.4.0}"
  74. build:
  75. context: ./deploy/computer
  76. dockerfile: Dockerfile
  77. hostname: desktop-2
  78. extra_hosts:
  79. - "desktop-2:127.0.0.1"
  80. init: true
  81. restart: unless-stopped
  82. network_mode: none
  83. shm_size: 512m
  84. mem_limit: 4g
  85. cpus: 2
  86. pids_limit: 512
  87. cap_drop:
  88. - ALL
  89. cap_add:
  90. - SETUID
  91. - SETGID
  92. - CHOWN
  93. - KILL
  94. environment:
  95. YAOYAO_COMPOSE_DESKTOP_ID: "eba5caaf-744e-4f27-bcdd-1f1f35d05a42"
  96. volumes:
  97. - desktop-2-workspace:/home/cua/workspace
  98. - desktop-2-ipc:/run/yaoyao-private/bridge
  99. volumes:
  100. yaoyao-data:
  101. desktop-1-workspace:
  102. desktop-1-ipc:
  103. desktop-2-workspace:
  104. desktop-2-ipc: