questions.yaml 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660
  1. groups:
  2. - name: Komodo Configuration
  3. description: Configure Komodo
  4. - name: Network Configuration
  5. description: Configure Network for Komodo
  6. - name: Storage Configuration
  7. description: Configure Storage for Komodo
  8. - name: Labels Configuration
  9. description: Configure Labels for Komodo
  10. - name: Resources Configuration
  11. description: Configure Resources for Komodo
  12. questions:
  13. - variable: TZ
  14. group: Komodo Configuration
  15. label: Timezone
  16. schema:
  17. type: string
  18. default: Etc/UTC
  19. required: true
  20. $ref:
  21. - definitions/timezone
  22. - variable: komodo
  23. label: ""
  24. group: Komodo Configuration
  25. schema:
  26. type: dict
  27. attrs:
  28. - variable: db_password
  29. label: Database Password
  30. schema:
  31. type: string
  32. default: ""
  33. required: true
  34. private: true
  35. - variable: local_auth
  36. label: Local Auth
  37. schema:
  38. type: boolean
  39. default: true
  40. - variable: allow_registration
  41. label: Allow Registration
  42. schema:
  43. type: boolean
  44. default: true
  45. - variable: auto_enable_new_users
  46. label: Auto Enable New Users
  47. schema:
  48. type: boolean
  49. default: true
  50. - variable: passkey
  51. label: Passkey (Periphery)
  52. schema:
  53. type: string
  54. default: ""
  55. required: true
  56. private: true
  57. - variable: additional_passkeys
  58. label: Additional Periphery Passkeys
  59. schema:
  60. type: list
  61. default: []
  62. items:
  63. - variable: passkey
  64. label: Passkey
  65. schema:
  66. type: string
  67. required: true
  68. private: true
  69. - variable: additional_envs
  70. label: Additional Environment Variables
  71. schema:
  72. type: list
  73. default: []
  74. items:
  75. - variable: env
  76. label: Environment Variable
  77. schema:
  78. type: dict
  79. attrs:
  80. - variable: name
  81. label: Name
  82. schema:
  83. type: string
  84. required: true
  85. - variable: value
  86. label: Value
  87. schema:
  88. type: string
  89. - variable: network
  90. label: ""
  91. group: Network Configuration
  92. schema:
  93. type: dict
  94. attrs:
  95. - variable: web_port
  96. label: WebUI Port
  97. schema:
  98. type: dict
  99. attrs:
  100. - variable: bind_mode
  101. label: Port Bind Mode
  102. description: |
  103. The port bind mode.</br>
  104. - Publish: The port will be published on the host for external access.</br>
  105. - Expose: The port will be exposed for inter-container communication.</br>
  106. - None: The port will not be exposed or published.</br>
  107. Note: If the Dockerfile defines an EXPOSE directive,
  108. the port will still be exposed for inter-container communication regardless of this setting.
  109. schema:
  110. type: string
  111. default: "published"
  112. enum:
  113. - value: "published"
  114. description: Publish port on the host for external access
  115. - value: "exposed"
  116. description: Expose port for inter-container communication
  117. - value: ""
  118. description: None
  119. - variable: port_number
  120. label: Port Number
  121. schema:
  122. type: int
  123. default: 30160
  124. min: 1
  125. max: 65535
  126. required: true
  127. - variable: host_ips
  128. label: Host IPs
  129. description: IPs on the host to bind this port
  130. schema:
  131. type: list
  132. show_if: [["bind_mode", "=", "published"]]
  133. default: []
  134. items:
  135. - variable: host_ip
  136. label: Host IP
  137. schema:
  138. type: string
  139. required: true
  140. $ref:
  141. - definitions/node_bind_ip
  142. - variable: storage
  143. label: ""
  144. group: Storage Configuration
  145. schema:
  146. type: dict
  147. attrs:
  148. - variable: backups
  149. label: Backups Storage
  150. schema:
  151. type: dict
  152. attrs:
  153. - variable: type
  154. label: Type
  155. description: |
  156. ixVolume: Is dataset created automatically by the system.</br>
  157. Host Path: Is a path that already exists on the system.
  158. schema:
  159. type: string
  160. required: true
  161. default: "ix_volume"
  162. enum:
  163. - value: "host_path"
  164. description: Host Path (Path that already exists on the system)
  165. - value: "ix_volume"
  166. description: ixVolume (Dataset created automatically by the system)
  167. - variable: ix_volume_config
  168. label: ixVolume Configuration
  169. description: The configuration for the ixVolume dataset.
  170. schema:
  171. type: dict
  172. show_if: [["type", "=", "ix_volume"]]
  173. $ref:
  174. - "normalize/ix_volume"
  175. attrs:
  176. - variable: acl_enable
  177. label: Enable ACL
  178. description: Enable ACL for the storage.
  179. schema:
  180. type: boolean
  181. default: false
  182. - variable: dataset_name
  183. label: Dataset Name
  184. description: The name of the dataset to use for storage.
  185. schema:
  186. type: string
  187. required: true
  188. hidden: true
  189. default: "backups"
  190. - variable: acl_entries
  191. label: ACL Configuration
  192. schema:
  193. type: dict
  194. show_if: [["acl_enable", "=", true]]
  195. attrs: []
  196. - variable: host_path_config
  197. label: Host Path Configuration
  198. schema:
  199. type: dict
  200. show_if: [["type", "=", "host_path"]]
  201. attrs:
  202. - variable: acl_enable
  203. label: Enable ACL
  204. description: Enable ACL for the storage.
  205. schema:
  206. type: boolean
  207. default: false
  208. - variable: acl
  209. label: ACL Configuration
  210. schema:
  211. type: dict
  212. show_if: [["acl_enable", "=", true]]
  213. attrs: []
  214. $ref:
  215. - "normalize/acl"
  216. - variable: path
  217. label: Host Path
  218. description: The host path to use for storage.
  219. schema:
  220. type: hostpath
  221. show_if: [["acl_enable", "=", false]]
  222. required: true
  223. - variable: syncs
  224. label: Syncs Storage
  225. schema:
  226. type: dict
  227. attrs:
  228. - variable: type
  229. label: Type
  230. description: |
  231. ixVolume: Is dataset created automatically by the system.</br>
  232. Host Path: Is a path that already exists on the system.
  233. schema:
  234. type: string
  235. required: true
  236. default: "ix_volume"
  237. enum:
  238. - value: "host_path"
  239. description: Host Path (Path that already exists on the system)
  240. - value: "ix_volume"
  241. description: ixVolume (Dataset created automatically by the system)
  242. - variable: ix_volume_config
  243. label: ixVolume Configuration
  244. description: The configuration for the ixVolume dataset.
  245. schema:
  246. type: dict
  247. show_if: [["type", "=", "ix_volume"]]
  248. $ref:
  249. - "normalize/ix_volume"
  250. attrs:
  251. - variable: acl_enable
  252. label: Enable ACL
  253. description: Enable ACL for the storage.
  254. schema:
  255. type: boolean
  256. default: false
  257. - variable: dataset_name
  258. label: Dataset Name
  259. description: The name of the dataset to use for storage.
  260. schema:
  261. type: string
  262. required: true
  263. hidden: true
  264. default: "syncs"
  265. - variable: acl_entries
  266. label: ACL Configuration
  267. schema:
  268. type: dict
  269. show_if: [["acl_enable", "=", true]]
  270. attrs: []
  271. - variable: host_path_config
  272. label: Host Path Configuration
  273. schema:
  274. type: dict
  275. show_if: [["type", "=", "host_path"]]
  276. attrs:
  277. - variable: acl_enable
  278. label: Enable ACL
  279. description: Enable ACL for the storage.
  280. schema:
  281. type: boolean
  282. default: false
  283. - variable: acl
  284. label: ACL Configuration
  285. schema:
  286. type: dict
  287. show_if: [["acl_enable", "=", true]]
  288. attrs: []
  289. $ref:
  290. - "normalize/acl"
  291. - variable: path
  292. label: Host Path
  293. description: The host path to use for storage.
  294. schema:
  295. type: hostpath
  296. show_if: [["acl_enable", "=", false]]
  297. required: true
  298. - variable: periphery_root
  299. label: Periphery Root Storage
  300. schema:
  301. type: dict
  302. attrs:
  303. - variable: type
  304. label: Type
  305. description: |
  306. ixVolume: Is dataset created automatically by the system.</br>
  307. Host Path: Is a path that already exists on the system.
  308. schema:
  309. type: string
  310. required: true
  311. default: "ix_volume"
  312. enum:
  313. - value: "host_path"
  314. description: Host Path (Path that already exists on the system)
  315. - value: "ix_volume"
  316. description: ixVolume (Dataset created automatically by the system)
  317. - variable: ix_volume_config
  318. label: ixVolume Configuration
  319. description: The configuration for the ixVolume dataset.
  320. schema:
  321. type: dict
  322. show_if: [["type", "=", "ix_volume"]]
  323. $ref:
  324. - "normalize/ix_volume"
  325. attrs:
  326. - variable: acl_enable
  327. label: Enable ACL
  328. description: Enable ACL for the storage.
  329. schema:
  330. type: boolean
  331. default: false
  332. - variable: dataset_name
  333. label: Dataset Name
  334. description: The name of the dataset to use for storage.
  335. schema:
  336. type: string
  337. required: true
  338. hidden: true
  339. default: "periphery_root"
  340. - variable: acl_entries
  341. label: ACL Configuration
  342. schema:
  343. type: dict
  344. show_if: [["acl_enable", "=", true]]
  345. attrs: []
  346. - variable: host_path_config
  347. label: Host Path Configuration
  348. schema:
  349. type: dict
  350. show_if: [["type", "=", "host_path"]]
  351. attrs:
  352. - variable: acl_enable
  353. label: Enable ACL
  354. description: Enable ACL for the storage.
  355. schema:
  356. type: boolean
  357. default: false
  358. - variable: acl
  359. label: ACL Configuration
  360. schema:
  361. type: dict
  362. show_if: [["acl_enable", "=", true]]
  363. attrs: []
  364. $ref:
  365. - "normalize/acl"
  366. - variable: path
  367. label: Host Path
  368. description: The host path to use for storage.
  369. schema:
  370. type: hostpath
  371. show_if: [["acl_enable", "=", false]]
  372. required: true
  373. - variable: mongodb_data
  374. label: MongoDB Data Storage
  375. schema:
  376. type: dict
  377. attrs:
  378. - variable: type
  379. label: Type
  380. description: |
  381. ixVolume: Is dataset created automatically by the system.</br>
  382. Host Path: Is a path that already exists on the system.
  383. schema:
  384. type: string
  385. required: true
  386. default: "ix_volume"
  387. enum:
  388. - value: "host_path"
  389. description: Host Path (Path that already exists on the system)
  390. - value: "ix_volume"
  391. description: ixVolume (Dataset created automatically by the system)
  392. - variable: ix_volume_config
  393. label: ixVolume Configuration
  394. description: The configuration for the ixVolume dataset.
  395. schema:
  396. type: dict
  397. show_if: [["type", "=", "ix_volume"]]
  398. $ref:
  399. - "normalize/ix_volume"
  400. attrs:
  401. - variable: acl_enable
  402. label: Enable ACL
  403. description: Enable ACL for the storage.
  404. schema:
  405. type: boolean
  406. default: false
  407. - variable: dataset_name
  408. label: Dataset Name
  409. description: The name of the dataset to use for storage.
  410. schema:
  411. type: string
  412. required: true
  413. hidden: true
  414. default: "pg_data"
  415. - variable: acl_entries
  416. label: ACL Configuration
  417. schema:
  418. type: dict
  419. show_if: [["acl_enable", "=", true]]
  420. attrs: []
  421. - variable: host_path_config
  422. label: Host Path Configuration
  423. schema:
  424. type: dict
  425. show_if: [["type", "=", "host_path"]]
  426. attrs:
  427. - variable: acl_enable
  428. label: Enable ACL
  429. description: Enable ACL for the storage.
  430. schema:
  431. type: boolean
  432. default: false
  433. - variable: acl
  434. label: ACL Configuration
  435. schema:
  436. type: dict
  437. show_if: [["acl_enable", "=", true]]
  438. attrs: []
  439. $ref:
  440. - "normalize/acl"
  441. - variable: path
  442. label: Host Path
  443. description: The host path to use for storage.
  444. schema:
  445. type: hostpath
  446. show_if: [["acl_enable", "=", false]]
  447. required: true
  448. - variable: auto_permissions
  449. label: Automatic Permissions
  450. description: |
  451. Automatically set permissions for the host path.
  452. Enabling this, will check the top level directory,</br>
  453. If it finds incorrect permissions, it will `chown` the
  454. host path to the user and group required for the
  455. postgres container.
  456. schema:
  457. type: boolean
  458. default: false
  459. show_if: [["acl_enable", "=", false]]
  460. - variable: additional_storage
  461. label: Additional Storage
  462. schema:
  463. type: list
  464. default: []
  465. items:
  466. - variable: storageEntry
  467. label: Storage Entry
  468. schema:
  469. type: dict
  470. attrs:
  471. - variable: type
  472. label: Type
  473. description: |
  474. ixVolume: Is dataset created automatically by the system.</br>
  475. Host Path: Is a path that already exists on the system.</br>
  476. SMB Share: Is a SMB share that is mounted to as a volume.
  477. schema:
  478. type: string
  479. required: true
  480. default: "ix_volume"
  481. enum:
  482. - value: "host_path"
  483. description: Host Path (Path that already exists on the system)
  484. - value: "ix_volume"
  485. description: ixVolume (Dataset created automatically by the system)
  486. - value: "cifs"
  487. description: SMB/CIFS Share (Mounts a volume to a SMB share)
  488. - variable: read_only
  489. label: Read Only
  490. description: Mount the volume as read only.
  491. schema:
  492. type: boolean
  493. default: false
  494. - variable: mount_path
  495. label: Mount Path
  496. description: The path inside the container to mount the storage.
  497. schema:
  498. type: path
  499. required: true
  500. - variable: host_path_config
  501. label: Host Path Configuration
  502. schema:
  503. type: dict
  504. show_if: [["type", "=", "host_path"]]
  505. attrs:
  506. - variable: acl_enable
  507. label: Enable ACL
  508. description: Enable ACL for the storage.
  509. schema:
  510. type: boolean
  511. default: false
  512. - variable: acl
  513. label: ACL Configuration
  514. schema:
  515. type: dict
  516. show_if: [["acl_enable", "=", true]]
  517. attrs: []
  518. $ref:
  519. - "normalize/acl"
  520. - variable: path
  521. label: Host Path
  522. description: The host path to use for storage.
  523. schema:
  524. type: hostpath
  525. show_if: [["acl_enable", "=", false]]
  526. required: true
  527. - variable: ix_volume_config
  528. label: ixVolume Configuration
  529. description: The configuration for the ixVolume dataset.
  530. schema:
  531. type: dict
  532. show_if: [["type", "=", "ix_volume"]]
  533. $ref:
  534. - "normalize/ix_volume"
  535. attrs:
  536. - variable: acl_enable
  537. label: Enable ACL
  538. description: Enable ACL for the storage.
  539. schema:
  540. type: boolean
  541. default: false
  542. - variable: dataset_name
  543. label: Dataset Name
  544. description: The name of the dataset to use for storage.
  545. schema:
  546. type: string
  547. required: true
  548. default: "storage_entry"
  549. - variable: acl_entries
  550. label: ACL Configuration
  551. schema:
  552. type: dict
  553. show_if: [["acl_enable", "=", true]]
  554. attrs: []
  555. $ref:
  556. - "normalize/acl"
  557. - variable: cifs_config
  558. label: SMB Configuration
  559. description: The configuration for the SMB dataset.
  560. schema:
  561. type: dict
  562. show_if: [["type", "=", "cifs"]]
  563. attrs:
  564. - variable: server
  565. label: Server
  566. description: The server to mount the SMB share.
  567. schema:
  568. type: string
  569. required: true
  570. - variable: path
  571. label: Path
  572. description: The path to mount the SMB share.
  573. schema:
  574. type: string
  575. required: true
  576. - variable: username
  577. label: Username
  578. description: The username to use for the SMB share.
  579. schema:
  580. type: string
  581. required: true
  582. - variable: password
  583. label: Password
  584. description: The password to use for the SMB share.
  585. schema:
  586. type: string
  587. required: true
  588. private: true
  589. - variable: domain
  590. label: Domain
  591. description: The domain to use for the SMB share.
  592. schema:
  593. type: string
  594. - variable: labels
  595. label: ""
  596. group: Labels Configuration
  597. schema:
  598. type: list
  599. default: []
  600. items:
  601. - variable: label
  602. label: Label
  603. schema:
  604. type: dict
  605. attrs:
  606. - variable: key
  607. label: Key
  608. schema:
  609. type: string
  610. required: true
  611. - variable: value
  612. label: Value
  613. schema:
  614. type: string
  615. required: true
  616. - variable: containers
  617. label: Containers
  618. description: Containers where the label should be applied
  619. schema:
  620. type: list
  621. items:
  622. - variable: container
  623. label: Container
  624. schema:
  625. type: string
  626. required: true
  627. enum:
  628. - value: core
  629. description: core
  630. - value: periphery
  631. description: periphery
  632. - value: mongo
  633. description: mongo
  634. - variable: resources
  635. label: ""
  636. group: Resources Configuration
  637. schema:
  638. type: dict
  639. attrs:
  640. - variable: limits
  641. label: Limits
  642. schema:
  643. type: dict
  644. attrs:
  645. - variable: cpus
  646. label: CPUs
  647. description: CPUs limit for Komodo.
  648. schema:
  649. type: int
  650. default: 2
  651. required: true
  652. - variable: memory
  653. label: Memory (in MB)
  654. description: Memory limit for Komodo.
  655. schema:
  656. type: int
  657. default: 4096
  658. required: true