questions.yaml 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398
  1. groups:
  2. - name: Ollama Configuration
  3. description: Configure Ollama
  4. - name: Network Configuration
  5. description: Configure Network for Ollama
  6. - name: Storage Configuration
  7. description: Configure Storage for Ollama
  8. - name: Labels Configuration
  9. description: Configure Labels for Ollama
  10. - name: Resources Configuration
  11. description: Configure Resources for Ollama
  12. questions:
  13. - variable: ollama
  14. label: ""
  15. group: Ollama Configuration
  16. schema:
  17. type: dict
  18. attrs:
  19. - variable: image_selector
  20. label: Image Selector
  21. description: Image to use
  22. schema:
  23. type: string
  24. default: image
  25. required: true
  26. enum:
  27. - value: image
  28. description: Default Image
  29. - value: rocm_image
  30. description: ROCM Image
  31. - variable: additional_envs
  32. label: Additional Environment Variables
  33. schema:
  34. type: list
  35. default: []
  36. items:
  37. - variable: env
  38. label: Environment Variable
  39. schema:
  40. type: dict
  41. attrs:
  42. - variable: name
  43. label: Name
  44. schema:
  45. type: string
  46. required: true
  47. - variable: value
  48. label: Value
  49. schema:
  50. type: string
  51. - variable: network
  52. label: ""
  53. group: Network Configuration
  54. schema:
  55. type: dict
  56. attrs:
  57. - variable: api_port
  58. label: API Port
  59. schema:
  60. type: dict
  61. attrs:
  62. - variable: bind_mode
  63. label: Port Bind Mode
  64. description: |
  65. The port bind mode.</br>
  66. - Publish: The port will be published on the host for external access.</br>
  67. - Expose: The port will be exposed for inter-container communication.</br>
  68. - None: The port will not be exposed or published.</br>
  69. Note: If the Dockerfile defines an EXPOSE directive,
  70. the port will still be exposed for inter-container communication regardless of this setting.
  71. schema:
  72. type: string
  73. default: "published"
  74. enum:
  75. - value: "published"
  76. description: Publish port on the host for external access
  77. - value: "exposed"
  78. description: Expose port for inter-container communication
  79. - value: ""
  80. description: None
  81. - variable: port_number
  82. label: Port Number
  83. schema:
  84. type: int
  85. default: 30068
  86. min: 1
  87. max: 65535
  88. required: true
  89. - variable: host_ips
  90. label: Host IPs
  91. description: IPs on the host to bind this port
  92. schema:
  93. type: list
  94. show_if: [["bind_mode", "=", "published"]]
  95. default: []
  96. items:
  97. - variable: host_ip
  98. label: Host IP
  99. schema:
  100. type: string
  101. required: true
  102. $ref:
  103. - definitions/node_bind_ip
  104. - variable: host_network
  105. label: Host Network
  106. description: |
  107. Bind to the host network. It's recommended to keep this disabled.
  108. schema:
  109. type: boolean
  110. default: false
  111. - variable: storage
  112. label: ""
  113. group: Storage Configuration
  114. schema:
  115. type: dict
  116. attrs:
  117. - variable: data
  118. label: Ollama Data Storage
  119. description: The path to store Ollama Data.
  120. schema:
  121. type: dict
  122. attrs:
  123. - variable: type
  124. label: Type
  125. description: |
  126. ixVolume: Is dataset created automatically by the system.</br>
  127. Host Path: Is a path that already exists on the system.
  128. schema:
  129. type: string
  130. required: true
  131. default: "ix_volume"
  132. enum:
  133. - value: "host_path"
  134. description: Host Path (Path that already exists on the system)
  135. - value: "ix_volume"
  136. description: ixVolume (Dataset created automatically by the system)
  137. - variable: ix_volume_config
  138. label: ixVolume Configuration
  139. description: The configuration for the ixVolume dataset.
  140. schema:
  141. type: dict
  142. show_if: [["type", "=", "ix_volume"]]
  143. $ref:
  144. - "normalize/ix_volume"
  145. attrs:
  146. - variable: acl_enable
  147. label: Enable ACL
  148. description: Enable ACL for the storage.
  149. schema:
  150. type: boolean
  151. default: false
  152. - variable: dataset_name
  153. label: Dataset Name
  154. description: The name of the dataset to use for storage.
  155. schema:
  156. type: string
  157. required: true
  158. hidden: true
  159. default: "data"
  160. - variable: acl_entries
  161. label: ACL Configuration
  162. schema:
  163. type: dict
  164. show_if: [["acl_enable", "=", true]]
  165. attrs: []
  166. - variable: host_path_config
  167. label: Host Path Configuration
  168. schema:
  169. type: dict
  170. show_if: [["type", "=", "host_path"]]
  171. attrs:
  172. - variable: acl_enable
  173. label: Enable ACL
  174. description: Enable ACL for the storage.
  175. schema:
  176. type: boolean
  177. default: false
  178. - variable: acl
  179. label: ACL Configuration
  180. schema:
  181. type: dict
  182. show_if: [["acl_enable", "=", true]]
  183. attrs: []
  184. $ref:
  185. - "normalize/acl"
  186. - variable: path
  187. label: Host Path
  188. description: The host path to use for storage.
  189. schema:
  190. type: hostpath
  191. show_if: [["acl_enable", "=", false]]
  192. required: true
  193. - variable: additional_storage
  194. label: Additional Storage
  195. schema:
  196. type: list
  197. default: []
  198. items:
  199. - variable: storageEntry
  200. label: Storage Entry
  201. schema:
  202. type: dict
  203. attrs:
  204. - variable: type
  205. label: Type
  206. description: |
  207. ixVolume: Is dataset created automatically by the system.</br>
  208. Host Path: Is a path that already exists on the system.</br>
  209. SMB Share: Is a SMB share that is mounted to as a volume.
  210. schema:
  211. type: string
  212. required: true
  213. default: "ix_volume"
  214. enum:
  215. - value: "host_path"
  216. description: Host Path (Path that already exists on the system)
  217. - value: "ix_volume"
  218. description: ixVolume (Dataset created automatically by the system)
  219. - value: "cifs"
  220. description: SMB/CIFS Share (Mounts a volume to a SMB share)
  221. - variable: read_only
  222. label: Read Only
  223. description: Mount the volume as read only.
  224. schema:
  225. type: boolean
  226. default: false
  227. - variable: mount_path
  228. label: Mount Path
  229. description: The path inside the container to mount the storage.
  230. schema:
  231. type: path
  232. required: true
  233. - variable: host_path_config
  234. label: Host Path Configuration
  235. schema:
  236. type: dict
  237. show_if: [["type", "=", "host_path"]]
  238. attrs:
  239. - variable: acl_enable
  240. label: Enable ACL
  241. description: Enable ACL for the storage.
  242. schema:
  243. type: boolean
  244. default: false
  245. - variable: acl
  246. label: ACL Configuration
  247. schema:
  248. type: dict
  249. show_if: [["acl_enable", "=", true]]
  250. attrs: []
  251. $ref:
  252. - "normalize/acl"
  253. - variable: path
  254. label: Host Path
  255. description: The host path to use for storage.
  256. schema:
  257. type: hostpath
  258. show_if: [["acl_enable", "=", false]]
  259. required: true
  260. - variable: ix_volume_config
  261. label: ixVolume Configuration
  262. description: The configuration for the ixVolume dataset.
  263. schema:
  264. type: dict
  265. show_if: [["type", "=", "ix_volume"]]
  266. $ref:
  267. - "normalize/ix_volume"
  268. attrs:
  269. - variable: acl_enable
  270. label: Enable ACL
  271. description: Enable ACL for the storage.
  272. schema:
  273. type: boolean
  274. default: false
  275. - variable: dataset_name
  276. label: Dataset Name
  277. description: The name of the dataset to use for storage.
  278. schema:
  279. type: string
  280. required: true
  281. default: "storage_entry"
  282. - variable: acl_entries
  283. label: ACL Configuration
  284. schema:
  285. type: dict
  286. show_if: [["acl_enable", "=", true]]
  287. attrs: []
  288. $ref:
  289. - "normalize/acl"
  290. - variable: cifs_config
  291. label: SMB Configuration
  292. description: The configuration for the SMB dataset.
  293. schema:
  294. type: dict
  295. show_if: [["type", "=", "cifs"]]
  296. attrs:
  297. - variable: server
  298. label: Server
  299. description: The server to mount the SMB share.
  300. schema:
  301. type: string
  302. required: true
  303. - variable: path
  304. label: Path
  305. description: The path to mount the SMB share.
  306. schema:
  307. type: string
  308. required: true
  309. - variable: username
  310. label: Username
  311. description: The username to use for the SMB share.
  312. schema:
  313. type: string
  314. required: true
  315. - variable: password
  316. label: Password
  317. description: The password to use for the SMB share.
  318. schema:
  319. type: string
  320. required: true
  321. private: true
  322. - variable: domain
  323. label: Domain
  324. description: The domain to use for the SMB share.
  325. schema:
  326. type: string
  327. - variable: labels
  328. label: ""
  329. group: Labels Configuration
  330. schema:
  331. type: list
  332. default: []
  333. items:
  334. - variable: label
  335. label: Label
  336. schema:
  337. type: dict
  338. attrs:
  339. - variable: key
  340. label: Key
  341. schema:
  342. type: string
  343. required: true
  344. - variable: value
  345. label: Value
  346. schema:
  347. type: string
  348. required: true
  349. - variable: containers
  350. label: Containers
  351. description: Containers where the label should be applied
  352. schema:
  353. type: list
  354. items:
  355. - variable: container
  356. label: Container
  357. schema:
  358. type: string
  359. required: true
  360. enum:
  361. - value: ollama
  362. description: ollama
  363. - variable: resources
  364. label: ""
  365. group: Resources Configuration
  366. schema:
  367. type: dict
  368. attrs:
  369. - variable: limits
  370. label: Limits
  371. schema:
  372. type: dict
  373. attrs:
  374. - variable: cpus
  375. label: CPUs
  376. description: CPUs limit for Ollama.
  377. schema:
  378. type: int
  379. default: 2
  380. required: true
  381. - variable: memory
  382. label: Memory (in MB)
  383. description: Memory limit for Ollama.
  384. schema:
  385. type: int
  386. default: 4096
  387. required: true
  388. - variable: gpus
  389. group: Resources Configuration
  390. label: GPU Configuration
  391. schema:
  392. type: dict
  393. $ref:
  394. - "definitions/gpu_configuration"
  395. attrs: []