questions.yaml 18 KB

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