app_versions.json 156 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049
  1. {
  2. "1.1.0": {
  3. "healthy": true,
  4. "supported": false,
  5. "healthy_error": null,
  6. "location": "/__w/charts/charts/test/minio/1.1.0",
  7. "last_update": "2025-03-06 08:26:26",
  8. "required_features": [
  9. "normalize/acl",
  10. "normalize/ixVolume",
  11. "definitions/certificate"
  12. ],
  13. "human_version": "2023-12-07_1.1.0",
  14. "version": "1.1.0",
  15. "chart_metadata": {
  16. "name": "minio",
  17. "description": "High Performance, Kubernetes Native Object Storage",
  18. "annotations": {
  19. "title": "MinIO"
  20. },
  21. "type": "application",
  22. "version": "1.1.0",
  23. "apiVersion": "v2",
  24. "appVersion": "2023-12-07",
  25. "kubeVersion": ">=1.16.0-0",
  26. "maintainers": [
  27. {
  28. "name": "truenas",
  29. "url": "https://www.truenas.com/",
  30. "email": "dev@ixsystems.com"
  31. }
  32. ],
  33. "dependencies": [
  34. {
  35. "name": "common",
  36. "repository": "file://../../../common",
  37. "version": "1.2.6"
  38. }
  39. ],
  40. "home": "https://min.io",
  41. "icon": "https://media.sys.truenas.net/apps/minio/icons/icon.png",
  42. "sources": [
  43. "https://github.com/minio/minio",
  44. "https://github.com/truenas/charts/tree/master/enterprise/minio"
  45. ],
  46. "keywords": [
  47. "storage",
  48. "object-storage",
  49. "S3"
  50. ]
  51. },
  52. "app_metadata": {
  53. "runAsContext": [
  54. {
  55. "userName": "minio",
  56. "groupName": "minio",
  57. "gid": 568,
  58. "uid": 568,
  59. "description": "Minio can run as any non-root user."
  60. },
  61. {
  62. "userName": "logsearch",
  63. "groupName": "logsearch",
  64. "gid": 568,
  65. "uid": 568,
  66. "description": "Minio's logsearch can run as any non-root user."
  67. },
  68. {
  69. "userName": "postgres",
  70. "groupName": "postgres",
  71. "gid": 999,
  72. "uid": 999,
  73. "description": "Postgres runs as a non-root user."
  74. }
  75. ],
  76. "capabilities": [],
  77. "hostMounts": []
  78. },
  79. "schema": {
  80. "groups": [
  81. {
  82. "name": "MinIO Credentials",
  83. "description": "Configure Credentials for MinIO"
  84. },
  85. {
  86. "name": "User and Group Configuration",
  87. "description": "Configure User and Group for MinIO"
  88. },
  89. {
  90. "name": "Network Configuration",
  91. "description": "Configure Network for MinIO"
  92. },
  93. {
  94. "name": "Storage Configuration",
  95. "description": "Configure Storage for MinIO"
  96. },
  97. {
  98. "name": "MultiMode Configuration",
  99. "description": "Configure MultiMode for MinIO"
  100. },
  101. {
  102. "name": "MinIO Logging",
  103. "description": "Configure Logging for MinIO"
  104. },
  105. {
  106. "name": "Resources Configuration",
  107. "description": "Configure Resources for MinIO"
  108. }
  109. ],
  110. "portals": {
  111. "web_portal": {
  112. "protocols": [
  113. "$kubernetes-resource_configmap_portal_protocol"
  114. ],
  115. "host": [
  116. "$kubernetes-resource_configmap_portal_host"
  117. ],
  118. "ports": [
  119. "$kubernetes-resource_configmap_portal_port"
  120. ],
  121. "path": "$kubernetes-resource_configmap_portal_path"
  122. }
  123. },
  124. "questions": [
  125. {
  126. "variable": "minioCreds",
  127. "label": "",
  128. "group": "MinIO Credentials",
  129. "schema": {
  130. "type": "dict",
  131. "attrs": [
  132. {
  133. "variable": "rootUser",
  134. "label": "Root User",
  135. "description": "The access key for the root user.",
  136. "schema": {
  137. "type": "string",
  138. "min_length": 5,
  139. "required": true
  140. }
  141. },
  142. {
  143. "variable": "rootPass",
  144. "label": "Root Password",
  145. "description": "The secret key for the root user.",
  146. "schema": {
  147. "type": "string",
  148. "required": true,
  149. "min_length": 8,
  150. "private": true
  151. }
  152. }
  153. ]
  154. }
  155. },
  156. {
  157. "variable": "minioRunAs",
  158. "label": "",
  159. "group": "User and Group Configuration",
  160. "schema": {
  161. "type": "dict",
  162. "attrs": [
  163. {
  164. "variable": "user",
  165. "label": "User ID",
  166. "description": "The user id that MinIO will run as. <br/>\nCan't be changed after initial install.\n",
  167. "schema": {
  168. "type": "int",
  169. "min": 568,
  170. "default": 568,
  171. "immutable": true,
  172. "required": true
  173. }
  174. },
  175. {
  176. "variable": "group",
  177. "label": "Group ID",
  178. "description": "The group id that MinIO will run as. <br/>\nCan't be changed after initial install.\n",
  179. "schema": {
  180. "type": "int",
  181. "min": 568,
  182. "default": 568,
  183. "immutable": true,
  184. "required": true
  185. }
  186. }
  187. ]
  188. }
  189. },
  190. {
  191. "variable": "minioNetwork",
  192. "label": "",
  193. "group": "Network Configuration",
  194. "schema": {
  195. "type": "dict",
  196. "attrs": [
  197. {
  198. "variable": "apiPort",
  199. "label": "API Port",
  200. "description": "The port for the MinIO API.",
  201. "schema": {
  202. "type": "int",
  203. "default": 30000,
  204. "min": 9000,
  205. "max": 65535,
  206. "required": true
  207. }
  208. },
  209. {
  210. "variable": "webPort",
  211. "label": "Web Port",
  212. "description": "The port for the MinIO Web UI.",
  213. "schema": {
  214. "type": "int",
  215. "default": 30001,
  216. "min": 9000,
  217. "max": 65535,
  218. "required": true
  219. }
  220. },
  221. {
  222. "variable": "hostNetwork",
  223. "label": "Host Network",
  224. "description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
  225. "schema": {
  226. "type": "boolean",
  227. "default": true
  228. }
  229. },
  230. {
  231. "variable": "certificateID",
  232. "label": "Certificate",
  233. "description": "The certificate to use for MinIO",
  234. "schema": {
  235. "type": "int",
  236. "null": true,
  237. "$ref": [
  238. "definitions/certificate"
  239. ],
  240. "enum": [
  241. {
  242. "value": null,
  243. "description": "No Certificate"
  244. }
  245. ],
  246. "default": null
  247. }
  248. },
  249. {
  250. "variable": "serverUrl",
  251. "label": "MinIO Server URL (API)",
  252. "description": "The URL that console will use to reach API</br>\nFor example https://minio1.example.com.</br></br>\n",
  253. "schema": {
  254. "type": "string",
  255. "required": true
  256. }
  257. },
  258. {
  259. "variable": "consoleUrl",
  260. "label": "MinIO Browser Redirect URL",
  261. "description": "The URL that console will provide as a redirect URL</br>\nFor example https://console.example.com.</br></br>\n",
  262. "schema": {
  263. "type": "string",
  264. "required": true
  265. }
  266. }
  267. ]
  268. }
  269. },
  270. {
  271. "variable": "enableMultiMode",
  272. "label": "Enable Multi Mode (SNMD or MNMD)",
  273. "group": "MultiMode Configuration",
  274. "description": "For Single Node Multi Drive (SNMD), the entry will look like this:</br>\nExample Entry - /data{1...4}</br></br>\nFor Multi Node Multi Drive (MNMD), the entry will look like this:</br>\nExample Entry - https://minio{1...3}.example.com:30000/data{1...4}</br></br>\nNote that each host must use the same port number and the same number of storage items.</br>\nIn both cases /data{1...4} is the directories to be used for MinIO.\nYou have to add additional storage for each data entry.\n",
  275. "schema": {
  276. "type": "boolean",
  277. "default": false,
  278. "show_subquestions_if": true,
  279. "subquestions": [
  280. {
  281. "variable": "minioMultiMode",
  282. "label": "Multi Mode (SNMD or MNMD)",
  283. "group": "MultiMode Configuration",
  284. "schema": {
  285. "type": "list",
  286. "default": [],
  287. "items": [
  288. {
  289. "variable": "item",
  290. "label": "",
  291. "schema": {
  292. "type": "string",
  293. "required": true
  294. }
  295. }
  296. ]
  297. }
  298. }
  299. ]
  300. }
  301. },
  302. {
  303. "variable": "minioStorage",
  304. "label": "",
  305. "group": "Storage Configuration",
  306. "schema": {
  307. "type": "list",
  308. "default": [
  309. {
  310. "type": "ixVolume",
  311. "mountPath": "/data1",
  312. "datasetName": "data1"
  313. }
  314. ],
  315. "empty": false,
  316. "required": true,
  317. "items": [
  318. {
  319. "variable": "item",
  320. "label": "Storage Item",
  321. "schema": {
  322. "type": "dict",
  323. "attrs": [
  324. {
  325. "variable": "type",
  326. "label": "Type",
  327. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  328. "schema": {
  329. "type": "string",
  330. "immutable": true,
  331. "required": true,
  332. "default": "ixVolume",
  333. "enum": [
  334. {
  335. "value": "hostPath",
  336. "description": "Host Path (Path that already exists on the system)"
  337. },
  338. {
  339. "value": "ixVolume",
  340. "description": "ixVolume (Dataset created automatically by the system)"
  341. }
  342. ]
  343. }
  344. },
  345. {
  346. "variable": "mountPath",
  347. "label": "Mount Path",
  348. "description": "The path inside the container to mount the storage.",
  349. "schema": {
  350. "type": "path",
  351. "required": true,
  352. "immutable": true,
  353. "default": "/data1"
  354. }
  355. },
  356. {
  357. "variable": "ixVolumeConfig",
  358. "label": "ixVolume Configuration",
  359. "description": "The configuration for the ixVolume dataset.",
  360. "schema": {
  361. "type": "dict",
  362. "show_if": [
  363. [
  364. "type",
  365. "=",
  366. "ixVolume"
  367. ]
  368. ],
  369. "$ref": [
  370. "normalize/ixVolume"
  371. ],
  372. "attrs": [
  373. {
  374. "variable": "aclEnable",
  375. "label": "Enable ACL",
  376. "description": "Enable ACL for the dataset.",
  377. "schema": {
  378. "type": "boolean",
  379. "hidden": true,
  380. "default": false
  381. }
  382. },
  383. {
  384. "variable": "datasetName",
  385. "label": "Dataset Name",
  386. "description": "The name of the dataset to use for storage.",
  387. "schema": {
  388. "type": "string",
  389. "required": true,
  390. "immutable": true,
  391. "default": "data1"
  392. }
  393. },
  394. {
  395. "variable": "aclEntries",
  396. "label": "ACL Configuration",
  397. "schema": {
  398. "type": "dict",
  399. "show_if": [
  400. [
  401. "aclEnable",
  402. "=",
  403. true
  404. ]
  405. ],
  406. "attrs": [
  407. {
  408. "variable": "path",
  409. "label": "Path",
  410. "description": "Path to perform ACL",
  411. "schema": {
  412. "type": "string",
  413. "hidden": true
  414. }
  415. },
  416. {
  417. "variable": "entries",
  418. "label": "ACL Entries",
  419. "description": "ACL Entries",
  420. "schema": {
  421. "type": "list",
  422. "items": [
  423. {
  424. "variable": "aclEntry",
  425. "label": "ACL Entry",
  426. "schema": {
  427. "type": "dict",
  428. "attrs": [
  429. {
  430. "variable": "id_type",
  431. "label": "ID Type",
  432. "schema": {
  433. "type": "string",
  434. "enum": [
  435. {
  436. "value": "USER",
  437. "description": "Entry is for a USER"
  438. },
  439. {
  440. "value": "GROUP",
  441. "description": "Entry is for a GROUP"
  442. }
  443. ],
  444. "default": "USER"
  445. }
  446. },
  447. {
  448. "variable": "id",
  449. "label": "ID",
  450. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  451. "schema": {
  452. "type": "int",
  453. "required": true,
  454. "min": 0
  455. }
  456. },
  457. {
  458. "variable": "access",
  459. "label": "Access",
  460. "schema": {
  461. "type": "string",
  462. "enum": [
  463. {
  464. "value": "READ",
  465. "description": "Read Access"
  466. },
  467. {
  468. "value": "MODIFY",
  469. "description": "Modify Access"
  470. },
  471. {
  472. "value": "FULL_CONTROL",
  473. "description": "FULL_CONTROL Access"
  474. }
  475. ]
  476. }
  477. }
  478. ]
  479. }
  480. }
  481. ]
  482. }
  483. }
  484. ]
  485. }
  486. }
  487. ]
  488. }
  489. },
  490. {
  491. "variable": "hostPathConfig",
  492. "label": "Host Path Configuration",
  493. "schema": {
  494. "type": "dict",
  495. "show_if": [
  496. [
  497. "type",
  498. "=",
  499. "hostPath"
  500. ]
  501. ],
  502. "attrs": [
  503. {
  504. "variable": "aclEnable",
  505. "label": "Enable ACL",
  506. "description": "Enable ACL for the dataset.",
  507. "schema": {
  508. "type": "boolean",
  509. "hidden": true,
  510. "default": false
  511. }
  512. },
  513. {
  514. "variable": "acl",
  515. "label": "ACL Configuration",
  516. "schema": {
  517. "type": "dict",
  518. "show_if": [
  519. [
  520. "aclEnable",
  521. "=",
  522. true
  523. ]
  524. ],
  525. "attrs": [
  526. {
  527. "variable": "path",
  528. "label": "Host Path",
  529. "description": "Host Path to perform ACL",
  530. "schema": {
  531. "type": "hostpath",
  532. "required": true,
  533. "empty": false
  534. }
  535. },
  536. {
  537. "variable": "entries",
  538. "label": "ACL Entries",
  539. "description": "ACL Entries",
  540. "schema": {
  541. "type": "list",
  542. "items": [
  543. {
  544. "variable": "aclEntry",
  545. "label": "ACL Entry",
  546. "schema": {
  547. "type": "dict",
  548. "attrs": [
  549. {
  550. "variable": "id_type",
  551. "label": "ID Type",
  552. "schema": {
  553. "type": "string",
  554. "enum": [
  555. {
  556. "value": "USER",
  557. "description": "Entry is for a USER"
  558. },
  559. {
  560. "value": "GROUP",
  561. "description": "Entry is for a GROUP"
  562. }
  563. ],
  564. "default": "USER"
  565. }
  566. },
  567. {
  568. "variable": "id",
  569. "label": "ID",
  570. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  571. "schema": {
  572. "type": "int",
  573. "required": true,
  574. "min": 0
  575. }
  576. },
  577. {
  578. "variable": "access",
  579. "label": "Access",
  580. "schema": {
  581. "type": "string",
  582. "enum": [
  583. {
  584. "value": "READ",
  585. "description": "Read Access"
  586. },
  587. {
  588. "value": "MODIFY",
  589. "description": "Modify Access"
  590. },
  591. {
  592. "value": "FULL_CONTROL",
  593. "description": "FULL_CONTROL Access"
  594. }
  595. ]
  596. }
  597. }
  598. ]
  599. }
  600. }
  601. ]
  602. }
  603. },
  604. {
  605. "variable": "options",
  606. "label": "ACL Options",
  607. "schema": {
  608. "type": "dict",
  609. "attrs": [
  610. {
  611. "variable": "force",
  612. "label": "Force Flag",
  613. "description": "Enabling `Force` applies ACL even if the path has existing data",
  614. "schema": {
  615. "type": "boolean",
  616. "default": false
  617. }
  618. }
  619. ]
  620. }
  621. }
  622. ],
  623. "$ref": [
  624. "normalize/acl"
  625. ]
  626. }
  627. },
  628. {
  629. "variable": "hostPath",
  630. "label": "Host Path",
  631. "description": "The host path to use for storage.",
  632. "schema": {
  633. "type": "hostpath",
  634. "show_if": [
  635. [
  636. "aclEnable",
  637. "=",
  638. false
  639. ]
  640. ],
  641. "required": true
  642. }
  643. }
  644. ]
  645. }
  646. }
  647. ]
  648. }
  649. }
  650. ]
  651. }
  652. },
  653. {
  654. "variable": "minioLogging",
  655. "label": "",
  656. "group": "MinIO Logging",
  657. "schema": {
  658. "type": "dict",
  659. "attrs": [
  660. {
  661. "variable": "anonymous",
  662. "label": "Anonymous",
  663. "description": "Hides sensitive information from logging.",
  664. "schema": {
  665. "type": "boolean",
  666. "default": false
  667. }
  668. },
  669. {
  670. "variable": "quiet",
  671. "label": "Quiet",
  672. "description": "Disables startup information.",
  673. "schema": {
  674. "type": "boolean",
  675. "default": false
  676. }
  677. },
  678. {
  679. "variable": "logsearch",
  680. "label": "LogSearch Configuration",
  681. "schema": {
  682. "type": "dict",
  683. "attrs": [
  684. {
  685. "variable": "enabled",
  686. "label": "Enable LogSearch",
  687. "schema": {
  688. "type": "boolean",
  689. "default": false,
  690. "show_subquestions_if": true,
  691. "subquestions": [
  692. {
  693. "variable": "diskCapacityGB",
  694. "label": "Disk Capacity (GB)",
  695. "description": "The disk capacity for LogSearch.",
  696. "schema": {
  697. "type": "int",
  698. "default": 5,
  699. "required": true
  700. }
  701. },
  702. {
  703. "variable": "pgData",
  704. "label": "Postgres Data Storage",
  705. "description": "The path to store Postgres data.",
  706. "schema": {
  707. "type": "dict",
  708. "attrs": [
  709. {
  710. "variable": "type",
  711. "label": "Type",
  712. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  713. "schema": {
  714. "type": "string",
  715. "required": true,
  716. "immutable": true,
  717. "default": "ixVolume",
  718. "enum": [
  719. {
  720. "value": "hostPath",
  721. "description": "Host Path (Path that already exists on the system)"
  722. },
  723. {
  724. "value": "ixVolume",
  725. "description": "ixVolume (Dataset created automatically by the system)"
  726. }
  727. ]
  728. }
  729. },
  730. {
  731. "variable": "ixVolumeConfig",
  732. "label": "ixVolume Configuration",
  733. "description": "The configuration for the ixVolume dataset.",
  734. "schema": {
  735. "type": "dict",
  736. "hidden": true,
  737. "show_if": [
  738. [
  739. "type",
  740. "=",
  741. "ixVolume"
  742. ]
  743. ],
  744. "$ref": [
  745. "normalize/ixVolume"
  746. ],
  747. "attrs": [
  748. {
  749. "variable": "aclEnable",
  750. "label": "Enable ACL",
  751. "description": "Enable ACL for the dataset.",
  752. "schema": {
  753. "type": "boolean",
  754. "hidden": true,
  755. "default": false
  756. }
  757. },
  758. {
  759. "variable": "datasetName",
  760. "label": "Dataset Name",
  761. "description": "The name of the dataset to use for storage.",
  762. "schema": {
  763. "type": "string",
  764. "required": true,
  765. "immutable": true,
  766. "hidden": true,
  767. "default": "postgres-data"
  768. }
  769. },
  770. {
  771. "variable": "aclEntries",
  772. "label": "ACL Configuration",
  773. "schema": {
  774. "type": "dict",
  775. "show_if": [
  776. [
  777. "aclEnable",
  778. "=",
  779. true
  780. ]
  781. ],
  782. "attrs": [
  783. {
  784. "variable": "path",
  785. "label": "Path",
  786. "description": "Path to perform ACL",
  787. "schema": {
  788. "type": "string",
  789. "hidden": true
  790. }
  791. },
  792. {
  793. "variable": "entries",
  794. "label": "ACL Entries",
  795. "description": "ACL Entries",
  796. "schema": {
  797. "type": "list",
  798. "items": [
  799. {
  800. "variable": "aclEntry",
  801. "label": "ACL Entry",
  802. "schema": {
  803. "type": "dict",
  804. "attrs": [
  805. {
  806. "variable": "id_type",
  807. "label": "ID Type",
  808. "schema": {
  809. "type": "string",
  810. "enum": [
  811. {
  812. "value": "USER",
  813. "description": "Entry is for a USER"
  814. },
  815. {
  816. "value": "GROUP",
  817. "description": "Entry is for a GROUP"
  818. }
  819. ],
  820. "default": "USER"
  821. }
  822. },
  823. {
  824. "variable": "id",
  825. "label": "ID",
  826. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  827. "schema": {
  828. "type": "int",
  829. "required": true,
  830. "min": 0
  831. }
  832. },
  833. {
  834. "variable": "access",
  835. "label": "Access",
  836. "schema": {
  837. "type": "string",
  838. "enum": [
  839. {
  840. "value": "READ",
  841. "description": "Read Access"
  842. },
  843. {
  844. "value": "MODIFY",
  845. "description": "Modify Access"
  846. },
  847. {
  848. "value": "FULL_CONTROL",
  849. "description": "FULL_CONTROL Access"
  850. }
  851. ]
  852. }
  853. }
  854. ]
  855. }
  856. }
  857. ]
  858. }
  859. }
  860. ]
  861. }
  862. }
  863. ]
  864. }
  865. },
  866. {
  867. "variable": "hostPathConfig",
  868. "label": "Host Path Configuration",
  869. "schema": {
  870. "type": "dict",
  871. "show_if": [
  872. [
  873. "type",
  874. "=",
  875. "hostPath"
  876. ]
  877. ],
  878. "attrs": [
  879. {
  880. "variable": "aclEnable",
  881. "label": "Enable ACL",
  882. "description": "Enable ACL for the dataset.",
  883. "schema": {
  884. "type": "boolean",
  885. "hidden": true,
  886. "default": false
  887. }
  888. },
  889. {
  890. "variable": "acl",
  891. "label": "ACL Configuration",
  892. "schema": {
  893. "type": "dict",
  894. "show_if": [
  895. [
  896. "aclEnable",
  897. "=",
  898. true
  899. ]
  900. ],
  901. "attrs": [
  902. {
  903. "variable": "path",
  904. "label": "Host Path",
  905. "description": "Host Path to perform ACL",
  906. "schema": {
  907. "type": "hostpath",
  908. "required": true,
  909. "empty": false
  910. }
  911. },
  912. {
  913. "variable": "entries",
  914. "label": "ACL Entries",
  915. "description": "ACL Entries",
  916. "schema": {
  917. "type": "list",
  918. "items": [
  919. {
  920. "variable": "aclEntry",
  921. "label": "ACL Entry",
  922. "schema": {
  923. "type": "dict",
  924. "attrs": [
  925. {
  926. "variable": "id_type",
  927. "label": "ID Type",
  928. "schema": {
  929. "type": "string",
  930. "enum": [
  931. {
  932. "value": "USER",
  933. "description": "Entry is for a USER"
  934. },
  935. {
  936. "value": "GROUP",
  937. "description": "Entry is for a GROUP"
  938. }
  939. ],
  940. "default": "USER"
  941. }
  942. },
  943. {
  944. "variable": "id",
  945. "label": "ID",
  946. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  947. "schema": {
  948. "type": "int",
  949. "required": true,
  950. "min": 0
  951. }
  952. },
  953. {
  954. "variable": "access",
  955. "label": "Access",
  956. "schema": {
  957. "type": "string",
  958. "enum": [
  959. {
  960. "value": "READ",
  961. "description": "Read Access"
  962. },
  963. {
  964. "value": "MODIFY",
  965. "description": "Modify Access"
  966. },
  967. {
  968. "value": "FULL_CONTROL",
  969. "description": "FULL_CONTROL Access"
  970. }
  971. ]
  972. }
  973. }
  974. ]
  975. }
  976. }
  977. ]
  978. }
  979. },
  980. {
  981. "variable": "options",
  982. "label": "ACL Options",
  983. "schema": {
  984. "type": "dict",
  985. "attrs": [
  986. {
  987. "variable": "force",
  988. "label": "Force Flag",
  989. "description": "Enabling `Force` applies ACL even if the path has existing data",
  990. "schema": {
  991. "type": "boolean",
  992. "default": false
  993. }
  994. }
  995. ]
  996. }
  997. }
  998. ],
  999. "$ref": [
  1000. "normalize/acl"
  1001. ]
  1002. }
  1003. },
  1004. {
  1005. "variable": "hostPath",
  1006. "label": "Host Path",
  1007. "description": "The host path to use for storage.",
  1008. "schema": {
  1009. "type": "hostpath",
  1010. "show_if": [
  1011. [
  1012. "aclEnable",
  1013. "=",
  1014. false
  1015. ]
  1016. ],
  1017. "required": true
  1018. }
  1019. }
  1020. ]
  1021. }
  1022. }
  1023. ]
  1024. }
  1025. },
  1026. {
  1027. "variable": "pgBackup",
  1028. "label": "Postgres Backup Storage",
  1029. "description": "The path to store Postgres backups.",
  1030. "schema": {
  1031. "type": "dict",
  1032. "attrs": [
  1033. {
  1034. "variable": "type",
  1035. "label": "Type",
  1036. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  1037. "schema": {
  1038. "type": "string",
  1039. "required": true,
  1040. "immutable": true,
  1041. "default": "ixVolume",
  1042. "enum": [
  1043. {
  1044. "value": "hostPath",
  1045. "description": "Host Path (Path that already exists on the system)"
  1046. },
  1047. {
  1048. "value": "ixVolume",
  1049. "description": "ixVolume (Dataset created automatically by the system)"
  1050. }
  1051. ]
  1052. }
  1053. },
  1054. {
  1055. "variable": "ixVolumeConfig",
  1056. "label": "ixVolume Configuration",
  1057. "description": "The configuration for the ixVolume dataset.",
  1058. "schema": {
  1059. "type": "dict",
  1060. "hidden": true,
  1061. "show_if": [
  1062. [
  1063. "type",
  1064. "=",
  1065. "ixVolume"
  1066. ]
  1067. ],
  1068. "$ref": [
  1069. "normalize/ixVolume"
  1070. ],
  1071. "attrs": [
  1072. {
  1073. "variable": "aclEnable",
  1074. "label": "Enable ACL",
  1075. "description": "Enable ACL for the dataset.",
  1076. "schema": {
  1077. "type": "boolean",
  1078. "hidden": true,
  1079. "default": false
  1080. }
  1081. },
  1082. {
  1083. "variable": "datasetName",
  1084. "label": "Dataset Name",
  1085. "description": "The name of the dataset to use for storage.",
  1086. "schema": {
  1087. "type": "string",
  1088. "required": true,
  1089. "immutable": true,
  1090. "hidden": true,
  1091. "default": "postgres-backup"
  1092. }
  1093. },
  1094. {
  1095. "variable": "aclEntries",
  1096. "label": "ACL Configuration",
  1097. "schema": {
  1098. "type": "dict",
  1099. "show_if": [
  1100. [
  1101. "aclEnable",
  1102. "=",
  1103. true
  1104. ]
  1105. ],
  1106. "attrs": [
  1107. {
  1108. "variable": "path",
  1109. "label": "Path",
  1110. "description": "Path to perform ACL",
  1111. "schema": {
  1112. "type": "string",
  1113. "hidden": true
  1114. }
  1115. },
  1116. {
  1117. "variable": "entries",
  1118. "label": "ACL Entries",
  1119. "description": "ACL Entries",
  1120. "schema": {
  1121. "type": "list",
  1122. "items": [
  1123. {
  1124. "variable": "aclEntry",
  1125. "label": "ACL Entry",
  1126. "schema": {
  1127. "type": "dict",
  1128. "attrs": [
  1129. {
  1130. "variable": "id_type",
  1131. "label": "ID Type",
  1132. "schema": {
  1133. "type": "string",
  1134. "enum": [
  1135. {
  1136. "value": "USER",
  1137. "description": "Entry is for a USER"
  1138. },
  1139. {
  1140. "value": "GROUP",
  1141. "description": "Entry is for a GROUP"
  1142. }
  1143. ],
  1144. "default": "USER"
  1145. }
  1146. },
  1147. {
  1148. "variable": "id",
  1149. "label": "ID",
  1150. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  1151. "schema": {
  1152. "type": "int",
  1153. "required": true,
  1154. "min": 0
  1155. }
  1156. },
  1157. {
  1158. "variable": "access",
  1159. "label": "Access",
  1160. "schema": {
  1161. "type": "string",
  1162. "enum": [
  1163. {
  1164. "value": "READ",
  1165. "description": "Read Access"
  1166. },
  1167. {
  1168. "value": "MODIFY",
  1169. "description": "Modify Access"
  1170. },
  1171. {
  1172. "value": "FULL_CONTROL",
  1173. "description": "FULL_CONTROL Access"
  1174. }
  1175. ]
  1176. }
  1177. }
  1178. ]
  1179. }
  1180. }
  1181. ]
  1182. }
  1183. }
  1184. ]
  1185. }
  1186. }
  1187. ]
  1188. }
  1189. },
  1190. {
  1191. "variable": "hostPathConfig",
  1192. "label": "Host Path Configuration",
  1193. "schema": {
  1194. "type": "dict",
  1195. "show_if": [
  1196. [
  1197. "type",
  1198. "=",
  1199. "hostPath"
  1200. ]
  1201. ],
  1202. "attrs": [
  1203. {
  1204. "variable": "aclEnable",
  1205. "label": "Enable ACL",
  1206. "description": "Enable ACL for the dataset.",
  1207. "schema": {
  1208. "type": "boolean",
  1209. "hidden": true,
  1210. "default": false
  1211. }
  1212. },
  1213. {
  1214. "variable": "acl",
  1215. "label": "ACL Configuration",
  1216. "schema": {
  1217. "type": "dict",
  1218. "show_if": [
  1219. [
  1220. "aclEnable",
  1221. "=",
  1222. true
  1223. ]
  1224. ],
  1225. "attrs": [
  1226. {
  1227. "variable": "path",
  1228. "label": "Host Path",
  1229. "description": "Host Path to perform ACL",
  1230. "schema": {
  1231. "type": "hostpath",
  1232. "required": true,
  1233. "empty": false
  1234. }
  1235. },
  1236. {
  1237. "variable": "entries",
  1238. "label": "ACL Entries",
  1239. "description": "ACL Entries",
  1240. "schema": {
  1241. "type": "list",
  1242. "items": [
  1243. {
  1244. "variable": "aclEntry",
  1245. "label": "ACL Entry",
  1246. "schema": {
  1247. "type": "dict",
  1248. "attrs": [
  1249. {
  1250. "variable": "id_type",
  1251. "label": "ID Type",
  1252. "schema": {
  1253. "type": "string",
  1254. "enum": [
  1255. {
  1256. "value": "USER",
  1257. "description": "Entry is for a USER"
  1258. },
  1259. {
  1260. "value": "GROUP",
  1261. "description": "Entry is for a GROUP"
  1262. }
  1263. ],
  1264. "default": "USER"
  1265. }
  1266. },
  1267. {
  1268. "variable": "id",
  1269. "label": "ID",
  1270. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  1271. "schema": {
  1272. "type": "int",
  1273. "required": true,
  1274. "min": 0
  1275. }
  1276. },
  1277. {
  1278. "variable": "access",
  1279. "label": "Access",
  1280. "schema": {
  1281. "type": "string",
  1282. "enum": [
  1283. {
  1284. "value": "READ",
  1285. "description": "Read Access"
  1286. },
  1287. {
  1288. "value": "MODIFY",
  1289. "description": "Modify Access"
  1290. },
  1291. {
  1292. "value": "FULL_CONTROL",
  1293. "description": "FULL_CONTROL Access"
  1294. }
  1295. ]
  1296. }
  1297. }
  1298. ]
  1299. }
  1300. }
  1301. ]
  1302. }
  1303. },
  1304. {
  1305. "variable": "options",
  1306. "label": "ACL Options",
  1307. "schema": {
  1308. "type": "dict",
  1309. "attrs": [
  1310. {
  1311. "variable": "force",
  1312. "label": "Force Flag",
  1313. "description": "Enabling `Force` applies ACL even if the path has existing data",
  1314. "schema": {
  1315. "type": "boolean",
  1316. "default": false
  1317. }
  1318. }
  1319. ]
  1320. }
  1321. }
  1322. ],
  1323. "$ref": [
  1324. "normalize/acl"
  1325. ]
  1326. }
  1327. },
  1328. {
  1329. "variable": "hostPath",
  1330. "label": "Host Path",
  1331. "description": "The host path to use for storage.",
  1332. "schema": {
  1333. "type": "hostpath",
  1334. "show_if": [
  1335. [
  1336. "aclEnable",
  1337. "=",
  1338. false
  1339. ]
  1340. ],
  1341. "required": true
  1342. }
  1343. }
  1344. ]
  1345. }
  1346. }
  1347. ]
  1348. }
  1349. }
  1350. ]
  1351. }
  1352. }
  1353. ]
  1354. }
  1355. }
  1356. ]
  1357. }
  1358. },
  1359. {
  1360. "variable": "resources",
  1361. "label": "",
  1362. "group": "Resources Configuration",
  1363. "schema": {
  1364. "type": "dict",
  1365. "attrs": [
  1366. {
  1367. "variable": "limits",
  1368. "label": "Limits",
  1369. "schema": {
  1370. "type": "dict",
  1371. "attrs": [
  1372. {
  1373. "variable": "cpu",
  1374. "label": "CPU",
  1375. "description": "CPU limit for MinIO.",
  1376. "schema": {
  1377. "type": "string",
  1378. "max_length": 6,
  1379. "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
  1380. "valid_chars_error": "Valid CPU limit formats are</br>\n- Plain Integer - eg. 1</br>\n- Float - eg. 0.5</br>\n- Milicpu - eg. 500m\n",
  1381. "default": "4000m",
  1382. "required": true
  1383. }
  1384. },
  1385. {
  1386. "variable": "memory",
  1387. "label": "Memory",
  1388. "description": "Memory limit for MinIO.",
  1389. "schema": {
  1390. "type": "string",
  1391. "max_length": 12,
  1392. "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
  1393. "valid_chars_error": "Valid Memory limit formats are</br>\n- Suffixed with E/P/T/G/M/K - eg. 1G</br>\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>\n- Plain Integer in bytes - eg. 1024</br>\n- Exponent - eg. 134e6\n",
  1394. "default": "8Gi",
  1395. "required": true
  1396. }
  1397. }
  1398. ]
  1399. }
  1400. }
  1401. ]
  1402. }
  1403. }
  1404. ]
  1405. },
  1406. "app_readme": "<h1>MinIO</h1>\n<p><a href=\"https://min.io\">MinIO</a> is a High Performance Object Storage released under Apache License v2.0.\nIt is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure\nfor machine learning, analytics and application data workloads.</p>\n<blockquote>\n<p>During the installation process, a container will be launched with <strong>root</strong> privileges. This is required\nin order to apply the correct permissions to the MinIO data directory. Afterward, the <code>MinIO</code> container\nwill run as a <strong>non</strong>-root user (<code>568</code>).\nSame applies to the <code>postgres</code> container. This will run afterwards as a <strong>non</strong>-root user (<code>999</code>).\nOn each upgrade, a container will be launched with <strong>root</strong> privileges in order to apply the correct\npermissions to the <code>postgres</code> backups directory. Container that performs the backup will run as a <strong>non</strong>-root user (<code>999</code>) afterwards.\nKeep in mind the permissions on the backup directory will be changed to <code>999:999</code> on <strong>every</strong> update.\nBut will only be changed once for the <code>MinIO</code> and <code>postgres</code> data directories.</p>\n</blockquote>\n<p>When Multi Mode is enabled and entries contain <code>://</code> (url) will enable Host Networking. Regardless of the selection in the <code>Networking</code> section.</p>",
  1407. "detailed_readme": "<h1>MinIO</h1>\n<p><a href=\"https://min.io\">MinIO</a> is a High Performance Object Storage released under Apache License v2.0.\nIt is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure\nfor machine learning, analytics and application data workloads.</p>\n<blockquote>\n<p>During the installation process, a container will be launched with <strong>root</strong> privileges. This is required\nin order to apply the correct permissions to the MinIO data directory. Afterward, the <code>MinIO</code> container\nwill run as a <strong>non</strong>-root user (<code>568</code>).\nSame applies to the <code>postgres</code> container. This will run afterwards as a <strong>non</strong>-root user (<code>999</code>).\nOn each upgrade, a container will be launched with <strong>root</strong> privileges in order to apply the correct\npermissions to the <code>postgres</code> backups directory. Container that performs the backup will run as a <strong>non</strong>-root user (<code>999</code>) afterwards.\nKeep in mind the permissions on the backup directory will be changed to <code>999:999</code> on <strong>every</strong> update.\nBut will only be changed once for the <code>MinIO</code> and <code>postgres</code> data directories.</p>\n</blockquote>\n<p>When Multi Mode is enabled and entries contain <code>://</code> (url) will enable Host Networking. Regardless of the selection in the <code>Networking</code> section.</p>",
  1408. "changelog": null
  1409. },
  1410. "1.0.24": {
  1411. "healthy": true,
  1412. "supported": true,
  1413. "healthy_error": null,
  1414. "location": "/__w/charts/charts/test/minio/1.0.24",
  1415. "last_update": "2025-03-06 08:26:26",
  1416. "required_features": [
  1417. "normalize/ixVolume",
  1418. "definitions/certificate"
  1419. ],
  1420. "human_version": "2023-03-24_1.0.24",
  1421. "version": "1.0.24",
  1422. "chart_metadata": {
  1423. "name": "minio",
  1424. "description": "High Performance, Kubernetes Native Object Storage",
  1425. "annotations": {
  1426. "title": "MinIO"
  1427. },
  1428. "type": "application",
  1429. "version": "1.0.24",
  1430. "apiVersion": "v2",
  1431. "appVersion": "2023-03-24",
  1432. "kubeVersion": ">=1.16.0-0",
  1433. "maintainers": [
  1434. {
  1435. "name": "truenas",
  1436. "url": "https://www.truenas.com/",
  1437. "email": "dev@ixsystems.com"
  1438. }
  1439. ],
  1440. "dependencies": [
  1441. {
  1442. "name": "common",
  1443. "repository": "file://../../../common",
  1444. "version": "1.2.2"
  1445. }
  1446. ],
  1447. "home": "https://min.io",
  1448. "icon": "https://media.sys.truenas.net/apps/minio/icons/icon.png",
  1449. "sources": [
  1450. "https://github.com/minio/minio",
  1451. "https://github.com/truenas/charts/tree/master/enterprise/minio"
  1452. ],
  1453. "keywords": [
  1454. "storage",
  1455. "object-storage",
  1456. "S3"
  1457. ]
  1458. },
  1459. "app_metadata": {
  1460. "runAsContext": [
  1461. {
  1462. "userName": "minio",
  1463. "groupName": "minio",
  1464. "gid": 568,
  1465. "uid": 568,
  1466. "description": "Minio can run as any non-root user."
  1467. },
  1468. {
  1469. "userName": "logsearch",
  1470. "groupName": "logsearch",
  1471. "gid": 568,
  1472. "uid": 568,
  1473. "description": "Minio's logsearch can run as any non-root user."
  1474. },
  1475. {
  1476. "userName": "postgres",
  1477. "groupName": "postgres",
  1478. "gid": 999,
  1479. "uid": 999,
  1480. "description": "Postgres runs as a non-root user."
  1481. }
  1482. ],
  1483. "capabilities": [],
  1484. "hostMounts": []
  1485. },
  1486. "schema": {
  1487. "groups": [
  1488. {
  1489. "name": "MinIO Credentials",
  1490. "description": "Configure Credentials for MinIO"
  1491. },
  1492. {
  1493. "name": "User and Group Configuration",
  1494. "description": "Configure User and Group for MinIO"
  1495. },
  1496. {
  1497. "name": "Network Configuration",
  1498. "description": "Configure Network for MinIO"
  1499. },
  1500. {
  1501. "name": "Storage Configuration",
  1502. "description": "Configure Storage for MinIO"
  1503. },
  1504. {
  1505. "name": "MultiMode Configuration",
  1506. "description": "Configure MultiMode for MinIO"
  1507. },
  1508. {
  1509. "name": "MinIO Logging",
  1510. "description": "Configure Logging for MinIO"
  1511. },
  1512. {
  1513. "name": "Resources Configuration",
  1514. "description": "Configure Resources for MinIO"
  1515. }
  1516. ],
  1517. "portals": {
  1518. "web_portal": {
  1519. "protocols": [
  1520. "$kubernetes-resource_configmap_portal_protocol"
  1521. ],
  1522. "host": [
  1523. "$kubernetes-resource_configmap_portal_host"
  1524. ],
  1525. "ports": [
  1526. "$kubernetes-resource_configmap_portal_port"
  1527. ],
  1528. "path": "$kubernetes-resource_configmap_portal_path"
  1529. }
  1530. },
  1531. "questions": [
  1532. {
  1533. "variable": "minioCreds",
  1534. "label": "",
  1535. "group": "MinIO Credentials",
  1536. "schema": {
  1537. "type": "dict",
  1538. "attrs": [
  1539. {
  1540. "variable": "rootUser",
  1541. "label": "Root User",
  1542. "description": "The access key for the root user.",
  1543. "schema": {
  1544. "type": "string",
  1545. "min_length": 5,
  1546. "required": true
  1547. }
  1548. },
  1549. {
  1550. "variable": "rootPass",
  1551. "label": "Root Password",
  1552. "description": "The secret key for the root user.",
  1553. "schema": {
  1554. "type": "string",
  1555. "required": true,
  1556. "min_length": 8,
  1557. "private": true
  1558. }
  1559. }
  1560. ]
  1561. }
  1562. },
  1563. {
  1564. "variable": "minioRunAs",
  1565. "label": "",
  1566. "group": "User and Group Configuration",
  1567. "schema": {
  1568. "type": "dict",
  1569. "attrs": [
  1570. {
  1571. "variable": "user",
  1572. "label": "User ID",
  1573. "description": "The user id that MinIO will run as. <br/>\nCan't be changed after initial install.\n",
  1574. "schema": {
  1575. "type": "int",
  1576. "min": 568,
  1577. "default": 568,
  1578. "immutable": true,
  1579. "required": true
  1580. }
  1581. },
  1582. {
  1583. "variable": "group",
  1584. "label": "Group ID",
  1585. "description": "The group id that MinIO will run as. <br/>\nCan't be changed after initial install.\n",
  1586. "schema": {
  1587. "type": "int",
  1588. "min": 568,
  1589. "default": 568,
  1590. "immutable": true,
  1591. "required": true
  1592. }
  1593. }
  1594. ]
  1595. }
  1596. },
  1597. {
  1598. "variable": "minioNetwork",
  1599. "label": "",
  1600. "group": "Network Configuration",
  1601. "schema": {
  1602. "type": "dict",
  1603. "attrs": [
  1604. {
  1605. "variable": "apiPort",
  1606. "label": "API Port",
  1607. "description": "The port for the MinIO API.",
  1608. "schema": {
  1609. "type": "int",
  1610. "default": 30000,
  1611. "min": 9000,
  1612. "max": 65535,
  1613. "required": true
  1614. }
  1615. },
  1616. {
  1617. "variable": "webPort",
  1618. "label": "Web Port",
  1619. "description": "The port for the MinIO Web UI.",
  1620. "schema": {
  1621. "type": "int",
  1622. "default": 30001,
  1623. "min": 9000,
  1624. "max": 65535,
  1625. "required": true
  1626. }
  1627. },
  1628. {
  1629. "variable": "hostNetwork",
  1630. "label": "Host Network",
  1631. "description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
  1632. "schema": {
  1633. "type": "boolean",
  1634. "default": true
  1635. }
  1636. },
  1637. {
  1638. "variable": "certificateID",
  1639. "label": "Certificate",
  1640. "description": "The certificate to use for MinIO",
  1641. "schema": {
  1642. "type": "int",
  1643. "null": true,
  1644. "$ref": [
  1645. "definitions/certificate"
  1646. ],
  1647. "enum": [
  1648. {
  1649. "value": null,
  1650. "description": "No Certificate"
  1651. }
  1652. ],
  1653. "default": null
  1654. }
  1655. },
  1656. {
  1657. "variable": "serverUrl",
  1658. "label": "MinIO Server URL (API)",
  1659. "description": "The URL that console will use to reach API</br>\nFor example https://minio1.example.com.</br></br>\n",
  1660. "schema": {
  1661. "type": "string",
  1662. "required": true
  1663. }
  1664. },
  1665. {
  1666. "variable": "consoleUrl",
  1667. "label": "MinIO Browser Redirect URL",
  1668. "description": "The URL that console will provide as a redirect URL</br>\nFor example https://console.example.com.</br></br>\n",
  1669. "schema": {
  1670. "type": "string",
  1671. "required": true
  1672. }
  1673. }
  1674. ]
  1675. }
  1676. },
  1677. {
  1678. "variable": "enableMultiMode",
  1679. "label": "Enable Multi Mode (SNMD or MNMD)",
  1680. "group": "MultiMode Configuration",
  1681. "description": "For Single Node Multi Drive (SNMD), the entry will look like this:</br>\nExample Entry - /data{1...4}</br></br>\nFor Multi Node Multi Drive (MNMD), the entry will look like this:</br>\nExample Entry - https://minio{1...3}.example.com:30000/data{1...4}</br></br>\nNote that each host must use the same port number and the same number of storage items.</br>\nIn both cases /data{1...4} is the directories to be used for MinIO.\nYou have to add additional storage for each data entry.\n",
  1682. "schema": {
  1683. "type": "boolean",
  1684. "default": false,
  1685. "show_subquestions_if": true,
  1686. "subquestions": [
  1687. {
  1688. "variable": "minioMultiMode",
  1689. "label": "Multi Mode (SNMD or MNMD)",
  1690. "group": "MultiMode Configuration",
  1691. "schema": {
  1692. "type": "list",
  1693. "default": [],
  1694. "items": [
  1695. {
  1696. "variable": "item",
  1697. "label": "",
  1698. "schema": {
  1699. "type": "string",
  1700. "required": true
  1701. }
  1702. }
  1703. ]
  1704. }
  1705. }
  1706. ]
  1707. }
  1708. },
  1709. {
  1710. "variable": "minioStorage",
  1711. "label": "",
  1712. "group": "Storage Configuration",
  1713. "schema": {
  1714. "type": "list",
  1715. "default": [
  1716. {
  1717. "type": "ixVolume",
  1718. "mountPath": "/data1",
  1719. "datasetName": "data1"
  1720. }
  1721. ],
  1722. "empty": false,
  1723. "required": true,
  1724. "items": [
  1725. {
  1726. "variable": "item",
  1727. "label": "Storage Item",
  1728. "schema": {
  1729. "type": "dict",
  1730. "attrs": [
  1731. {
  1732. "variable": "type",
  1733. "label": "Type",
  1734. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  1735. "schema": {
  1736. "type": "string",
  1737. "immutable": true,
  1738. "required": true,
  1739. "default": "ixVolume",
  1740. "enum": [
  1741. {
  1742. "value": "hostPath",
  1743. "description": "Host Path (Path that already exists on the system)"
  1744. },
  1745. {
  1746. "value": "ixVolume",
  1747. "description": "ixVolume (Dataset created automatically by the system)"
  1748. }
  1749. ]
  1750. }
  1751. },
  1752. {
  1753. "variable": "mountPath",
  1754. "label": "Mount Path",
  1755. "description": "The path inside the container to mount the storage.",
  1756. "schema": {
  1757. "type": "path",
  1758. "required": true,
  1759. "immutable": true,
  1760. "default": "/data1"
  1761. }
  1762. },
  1763. {
  1764. "variable": "hostPath",
  1765. "label": "Host Path",
  1766. "description": "The host path to use for storage.",
  1767. "schema": {
  1768. "type": "hostpath",
  1769. "required": true,
  1770. "immutable": true,
  1771. "default": "",
  1772. "show_if": [
  1773. [
  1774. "type",
  1775. "=",
  1776. "hostPath"
  1777. ]
  1778. ]
  1779. }
  1780. },
  1781. {
  1782. "variable": "datasetName",
  1783. "label": "Dataset Name",
  1784. "description": "The name of the dataset to use for storage.",
  1785. "schema": {
  1786. "type": "string",
  1787. "show_if": [
  1788. [
  1789. "type",
  1790. "=",
  1791. "ixVolume"
  1792. ]
  1793. ],
  1794. "required": true,
  1795. "immutable": true,
  1796. "default": "data1",
  1797. "$ref": [
  1798. "normalize/ixVolume"
  1799. ]
  1800. }
  1801. }
  1802. ]
  1803. }
  1804. }
  1805. ]
  1806. }
  1807. },
  1808. {
  1809. "variable": "minioLogging",
  1810. "label": "",
  1811. "group": "MinIO Logging",
  1812. "schema": {
  1813. "type": "dict",
  1814. "attrs": [
  1815. {
  1816. "variable": "anonymous",
  1817. "label": "Anonymous",
  1818. "description": "Hides sensitive information from logging.",
  1819. "schema": {
  1820. "type": "boolean",
  1821. "default": false
  1822. }
  1823. },
  1824. {
  1825. "variable": "quiet",
  1826. "label": "Quiet",
  1827. "description": "Disables startup information.",
  1828. "schema": {
  1829. "type": "boolean",
  1830. "default": false
  1831. }
  1832. },
  1833. {
  1834. "variable": "logsearch",
  1835. "label": "LogSearch Configuration",
  1836. "schema": {
  1837. "type": "dict",
  1838. "attrs": [
  1839. {
  1840. "variable": "enabled",
  1841. "label": "Enable LogSearch",
  1842. "schema": {
  1843. "type": "boolean",
  1844. "default": false,
  1845. "show_subquestions_if": true,
  1846. "subquestions": [
  1847. {
  1848. "variable": "diskCapacityGB",
  1849. "label": "Disk Capacity (GB)",
  1850. "description": "The disk capacity for LogSearch.",
  1851. "schema": {
  1852. "type": "int",
  1853. "default": 5,
  1854. "required": true
  1855. }
  1856. },
  1857. {
  1858. "variable": "pgData",
  1859. "label": "Postgres Data Storage",
  1860. "description": "The path to store Postgres data.",
  1861. "schema": {
  1862. "type": "dict",
  1863. "attrs": [
  1864. {
  1865. "variable": "type",
  1866. "label": "Type",
  1867. "schema": {
  1868. "type": "string",
  1869. "required": true,
  1870. "immutable": true,
  1871. "default": "ixVolume",
  1872. "enum": [
  1873. {
  1874. "value": "hostPath",
  1875. "description": "Host Path"
  1876. },
  1877. {
  1878. "value": "ixVolume",
  1879. "description": "ixVolume"
  1880. }
  1881. ]
  1882. }
  1883. },
  1884. {
  1885. "variable": "datasetName",
  1886. "label": "Dataset Name",
  1887. "schema": {
  1888. "type": "string",
  1889. "show_if": [
  1890. [
  1891. "type",
  1892. "=",
  1893. "ixVolume"
  1894. ]
  1895. ],
  1896. "required": true,
  1897. "hidden": true,
  1898. "immutable": true,
  1899. "default": "postgres-data",
  1900. "$ref": [
  1901. "normalize/ixVolume"
  1902. ]
  1903. }
  1904. },
  1905. {
  1906. "variable": "hostPath",
  1907. "label": "Host Path",
  1908. "schema": {
  1909. "type": "hostpath",
  1910. "show_if": [
  1911. [
  1912. "type",
  1913. "=",
  1914. "hostPath"
  1915. ]
  1916. ],
  1917. "immutable": true,
  1918. "required": true
  1919. }
  1920. }
  1921. ]
  1922. }
  1923. },
  1924. {
  1925. "variable": "pgBackup",
  1926. "label": "Postgres Backup Storage",
  1927. "description": "The path to store Postgres backups.",
  1928. "schema": {
  1929. "type": "dict",
  1930. "attrs": [
  1931. {
  1932. "variable": "type",
  1933. "label": "Type",
  1934. "schema": {
  1935. "type": "string",
  1936. "required": true,
  1937. "default": "ixVolume",
  1938. "enum": [
  1939. {
  1940. "value": "hostPath",
  1941. "description": "Host Path"
  1942. },
  1943. {
  1944. "value": "ixVolume",
  1945. "description": "ixVolume"
  1946. }
  1947. ]
  1948. }
  1949. },
  1950. {
  1951. "variable": "datasetName",
  1952. "label": "Dataset Name",
  1953. "schema": {
  1954. "type": "string",
  1955. "show_if": [
  1956. [
  1957. "type",
  1958. "=",
  1959. "ixVolume"
  1960. ]
  1961. ],
  1962. "required": true,
  1963. "hidden": true,
  1964. "immutable": true,
  1965. "default": "postgres-backup",
  1966. "$ref": [
  1967. "normalize/ixVolume"
  1968. ]
  1969. }
  1970. },
  1971. {
  1972. "variable": "hostPath",
  1973. "label": "Host Path",
  1974. "schema": {
  1975. "type": "hostpath",
  1976. "show_if": [
  1977. [
  1978. "type",
  1979. "=",
  1980. "hostPath"
  1981. ]
  1982. ],
  1983. "required": true
  1984. }
  1985. }
  1986. ]
  1987. }
  1988. }
  1989. ]
  1990. }
  1991. }
  1992. ]
  1993. }
  1994. }
  1995. ]
  1996. }
  1997. },
  1998. {
  1999. "variable": "resources",
  2000. "label": "",
  2001. "group": "Resources Configuration",
  2002. "schema": {
  2003. "type": "dict",
  2004. "attrs": [
  2005. {
  2006. "variable": "limits",
  2007. "label": "Limits",
  2008. "schema": {
  2009. "type": "dict",
  2010. "attrs": [
  2011. {
  2012. "variable": "cpu",
  2013. "label": "CPU",
  2014. "description": "CPU limit for MinIO.",
  2015. "schema": {
  2016. "type": "string",
  2017. "max_length": 6,
  2018. "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
  2019. "valid_chars_error": "Valid CPU limit formats are</br>\n- Plain Integer - eg. 1</br>\n- Float - eg. 0.5</br>\n- Milicpu - eg. 500m\n",
  2020. "default": "4000m",
  2021. "required": true
  2022. }
  2023. },
  2024. {
  2025. "variable": "memory",
  2026. "label": "Memory",
  2027. "description": "Memory limit for MinIO.",
  2028. "schema": {
  2029. "type": "string",
  2030. "max_length": 12,
  2031. "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
  2032. "valid_chars_error": "Valid Memory limit formats are</br>\n- Suffixed with E/P/T/G/M/K - eg. 1G</br>\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>\n- Plain Integer in bytes - eg. 1024</br>\n- Exponent - eg. 134e6\n",
  2033. "default": "8Gi",
  2034. "required": true
  2035. }
  2036. }
  2037. ]
  2038. }
  2039. }
  2040. ]
  2041. }
  2042. }
  2043. ]
  2044. },
  2045. "app_readme": "<h1>MinIO</h1>\n<p><a href=\"https://min.io\">MinIO</a> is a High Performance Object Storage released under Apache License v2.0.\nIt is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure\nfor machine learning, analytics and application data workloads.</p>\n<blockquote>\n<p>During the installation process, a container will be launched with <strong>root</strong> privileges. This is required\nin order to apply the correct permissions to the MinIO data directory. Afterward, the <code>MinIO</code> container\nwill run as a <strong>non</strong>-root user (<code>568</code>).\nSame applies to the <code>postgres</code> container. This will run afterwards as a <strong>non</strong>-root user (<code>999</code>).\nOn each upgrade, a container will be launched with <strong>root</strong> privileges in order to apply the correct\npermissions to the <code>postgres</code> backups directory. Container that performs the backup will run as a <strong>non</strong>-root user (<code>999</code>) afterwards.\nKeep in mind the permissions on the backup directory will be changed to <code>999:999</code> on <strong>every</strong> update.\nBut will only be changed once for the <code>MinIO</code> and <code>postgres</code> data directories.</p>\n</blockquote>\n<p>When Multi Mode is enabled and entries contain <code>://</code> (url) will enable Host Networking. Regardless of the selection in the <code>Networking</code> section.</p>",
  2046. "detailed_readme": "<h1>MinIO</h1>\n<p><a href=\"https://min.io\">MinIO</a> is a High Performance Object Storage released under Apache License v2.0.\nIt is API compatible with Amazon S3 cloud storage service. Use MinIO to build high performance infrastructure\nfor machine learning, analytics and application data workloads.</p>\n<blockquote>\n<p>During the installation process, a container will be launched with <strong>root</strong> privileges. This is required\nin order to apply the correct permissions to the MinIO data directory. Afterward, the <code>MinIO</code> container\nwill run as a <strong>non</strong>-root user (<code>568</code>).\nSame applies to the <code>postgres</code> container. This will run afterwards as a <strong>non</strong>-root user (<code>999</code>).\nOn each upgrade, a container will be launched with <strong>root</strong> privileges in order to apply the correct\npermissions to the <code>postgres</code> backups directory. Container that performs the backup will run as a <strong>non</strong>-root user (<code>999</code>) afterwards.\nKeep in mind the permissions on the backup directory will be changed to <code>999:999</code> on <strong>every</strong> update.\nBut will only be changed once for the <code>MinIO</code> and <code>postgres</code> data directories.</p>\n</blockquote>\n<p>When Multi Mode is enabled and entries contain <code>://</code> (url) will enable Host Networking. Regardless of the selection in the <code>Networking</code> section.</p>",
  2047. "changelog": null
  2048. }
  2049. }