app_versions.json 60 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999
  1. {
  2. "1.3.9": {
  3. "healthy": true,
  4. "supported": true,
  5. "healthy_error": null,
  6. "location": "/__w/apps/apps/trains/community/grafana/1.3.9",
  7. "last_update": "2025-09-02 11:33:24",
  8. "required_features": [],
  9. "human_version": "12.1.1_1.3.9",
  10. "version": "1.3.9",
  11. "app_metadata": {
  12. "annotations": {
  13. "min_scale_version": "24.10.2.2"
  14. },
  15. "app_version": "12.1.1",
  16. "capabilities": [],
  17. "categories": [
  18. "productivity"
  19. ],
  20. "changelog_url": "https://grafana.com/docs/grafana/latest/whatsnew/",
  21. "date_added": "2024-08-01",
  22. "description": "Grafana is the open source analytics & monitoring solution for every database.",
  23. "home": "https://grafana.com",
  24. "host_mounts": [],
  25. "icon": "https://media.sys.truenas.net/apps/grafana/icons/icon.png",
  26. "keywords": [
  27. "analytics",
  28. "monitoring",
  29. "metrics",
  30. "dashboards"
  31. ],
  32. "lib_version": "2.1.49",
  33. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  34. "maintainers": [
  35. {
  36. "email": "dev@ixsystems.com",
  37. "name": "truenas",
  38. "url": "https://www.truenas.com/"
  39. }
  40. ],
  41. "name": "grafana",
  42. "run_as_context": [
  43. {
  44. "description": "Grafana runs as any non-root user.",
  45. "gid": 568,
  46. "group_name": "grafana runs as any non-root user.",
  47. "uid": 568,
  48. "user_name": "grafana runs as any non-root user."
  49. }
  50. ],
  51. "screenshots": [
  52. "https://media.sys.truenas.net/apps/grafana/screenshots/screenshot1.png",
  53. "https://media.sys.truenas.net/apps/grafana/screenshots/screenshot2.png"
  54. ],
  55. "sources": [
  56. "https://hub.docker.com/r/grafana/grafana",
  57. "https://github.com/grafana"
  58. ],
  59. "title": "Grafana",
  60. "train": "community",
  61. "version": "1.3.9"
  62. },
  63. "schema": {
  64. "groups": [
  65. {
  66. "name": "Grafana Configuration",
  67. "description": "Configure Grafana"
  68. },
  69. {
  70. "name": "User and Group Configuration",
  71. "description": "Configure User and Group for Grafana"
  72. },
  73. {
  74. "name": "Network Configuration",
  75. "description": "Configure Network for Grafana"
  76. },
  77. {
  78. "name": "Storage Configuration",
  79. "description": "Configure Storage for Grafana"
  80. },
  81. {
  82. "name": "Labels Configuration",
  83. "description": "Configure Labels for Eclipse Mosquitto"
  84. },
  85. {
  86. "name": "Resources Configuration",
  87. "description": "Configure Resources for Grafana"
  88. }
  89. ],
  90. "questions": [
  91. {
  92. "variable": "grafana",
  93. "label": "",
  94. "group": "Grafana Configuration",
  95. "schema": {
  96. "type": "dict",
  97. "attrs": [
  98. {
  99. "variable": "plugins",
  100. "label": "Plugins",
  101. "description": "The plugins to install.",
  102. "schema": {
  103. "type": "list",
  104. "default": [],
  105. "items": [
  106. {
  107. "variable": "plugin",
  108. "label": "Plugin",
  109. "schema": {
  110. "type": "string",
  111. "required": true
  112. }
  113. }
  114. ]
  115. }
  116. },
  117. {
  118. "variable": "additional_envs",
  119. "label": "Additional Environment Variables",
  120. "schema": {
  121. "type": "list",
  122. "default": [],
  123. "items": [
  124. {
  125. "variable": "env",
  126. "label": "Environment Variable",
  127. "schema": {
  128. "type": "dict",
  129. "attrs": [
  130. {
  131. "variable": "name",
  132. "label": "Name",
  133. "schema": {
  134. "type": "string",
  135. "required": true
  136. }
  137. },
  138. {
  139. "variable": "value",
  140. "label": "Value",
  141. "schema": {
  142. "type": "string"
  143. }
  144. }
  145. ]
  146. }
  147. }
  148. ]
  149. }
  150. }
  151. ]
  152. }
  153. },
  154. {
  155. "variable": "run_as",
  156. "label": "",
  157. "group": "User and Group Configuration",
  158. "schema": {
  159. "type": "dict",
  160. "attrs": [
  161. {
  162. "variable": "user",
  163. "label": "User ID",
  164. "description": "The user id that Grafana files will be owned by.",
  165. "schema": {
  166. "type": "int",
  167. "min": 568,
  168. "default": 568,
  169. "required": true
  170. }
  171. },
  172. {
  173. "variable": "group",
  174. "label": "Group ID",
  175. "description": "The group id that Grafana files will be owned by.",
  176. "schema": {
  177. "type": "int",
  178. "min": 568,
  179. "default": 568,
  180. "required": true
  181. }
  182. }
  183. ]
  184. }
  185. },
  186. {
  187. "variable": "network",
  188. "label": "",
  189. "group": "Network Configuration",
  190. "schema": {
  191. "type": "dict",
  192. "attrs": [
  193. {
  194. "variable": "web_port",
  195. "label": "WebUI Port",
  196. "description": "The port for Grafana WebUI",
  197. "schema": {
  198. "type": "dict",
  199. "attrs": [
  200. {
  201. "variable": "bind_mode",
  202. "label": "Port Bind Mode",
  203. "description": "The port bind mode.</br>\n- Publish: The port will be published on the host for external access.</br>\n- Expose: The port will be exposed for inter-container communication.</br>\n- None: The port will not be exposed or published.</br>\nNote: If the Dockerfile defines an EXPOSE directive,\nthe port will still be exposed for inter-container communication regardless of this setting.\n",
  204. "schema": {
  205. "type": "string",
  206. "default": "published",
  207. "enum": [
  208. {
  209. "value": "published",
  210. "description": "Publish port on the host for external access"
  211. },
  212. {
  213. "value": "exposed",
  214. "description": "Expose port for inter-container communication"
  215. },
  216. {
  217. "value": "",
  218. "description": "None"
  219. }
  220. ]
  221. }
  222. },
  223. {
  224. "variable": "port_number",
  225. "label": "Port Number",
  226. "schema": {
  227. "type": "int",
  228. "default": 30037,
  229. "min": 1,
  230. "max": 65535,
  231. "required": true
  232. }
  233. },
  234. {
  235. "variable": "host_ips",
  236. "label": "Host IPs",
  237. "description": "IPs on the host to bind this port",
  238. "schema": {
  239. "type": "list",
  240. "show_if": [
  241. [
  242. "bind_mode",
  243. "=",
  244. "published"
  245. ]
  246. ],
  247. "default": [],
  248. "items": [
  249. {
  250. "variable": "host_ip",
  251. "label": "Host IP",
  252. "schema": {
  253. "type": "string",
  254. "required": true,
  255. "$ref": [
  256. "definitions/node_bind_ip"
  257. ]
  258. }
  259. }
  260. ]
  261. }
  262. }
  263. ]
  264. }
  265. },
  266. {
  267. "variable": "host_network",
  268. "label": "Host Network",
  269. "description": "Bind to the host network. It's recommended to keep this disabled.\n",
  270. "schema": {
  271. "type": "boolean",
  272. "default": false
  273. }
  274. },
  275. {
  276. "variable": "certificate_id",
  277. "label": "Certificate ID",
  278. "description": "The certificate id to use for the https endpoint.",
  279. "schema": {
  280. "type": "int",
  281. "null": true,
  282. "$ref": [
  283. "definitions/certificate"
  284. ]
  285. }
  286. },
  287. {
  288. "variable": "root_url",
  289. "label": "Root URL",
  290. "description": "The root URL for Grafana </br>\nThe URL you use to access Grafana </br>\nExample: https://grafana.example.com:30037</br>\nExample: https://192.168.1.100:30037</br>\n",
  291. "schema": {
  292. "type": "string",
  293. "show_if": [
  294. [
  295. "certificate_id",
  296. "!=",
  297. null
  298. ]
  299. ]
  300. }
  301. }
  302. ]
  303. }
  304. },
  305. {
  306. "variable": "storage",
  307. "label": "",
  308. "group": "Storage Configuration",
  309. "schema": {
  310. "type": "dict",
  311. "attrs": [
  312. {
  313. "variable": "data",
  314. "label": "Grafana Data Storage",
  315. "description": "The path to store Grafana Data.",
  316. "schema": {
  317. "type": "dict",
  318. "attrs": [
  319. {
  320. "variable": "type",
  321. "label": "Type",
  322. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  323. "schema": {
  324. "type": "string",
  325. "required": true,
  326. "default": "ix_volume",
  327. "enum": [
  328. {
  329. "value": "host_path",
  330. "description": "Host Path (Path that already exists on the system)"
  331. },
  332. {
  333. "value": "ix_volume",
  334. "description": "ixVolume (Dataset created automatically by the system)"
  335. }
  336. ]
  337. }
  338. },
  339. {
  340. "variable": "ix_volume_config",
  341. "label": "ixVolume Configuration",
  342. "description": "The configuration for the ixVolume dataset.",
  343. "schema": {
  344. "type": "dict",
  345. "show_if": [
  346. [
  347. "type",
  348. "=",
  349. "ix_volume"
  350. ]
  351. ],
  352. "$ref": [
  353. "normalize/ix_volume"
  354. ],
  355. "attrs": [
  356. {
  357. "variable": "acl_enable",
  358. "label": "Enable ACL",
  359. "description": "Enable ACL for the storage.",
  360. "schema": {
  361. "type": "boolean",
  362. "default": false
  363. }
  364. },
  365. {
  366. "variable": "dataset_name",
  367. "label": "Dataset Name",
  368. "description": "The name of the dataset to use for storage.",
  369. "schema": {
  370. "type": "string",
  371. "required": true,
  372. "hidden": true,
  373. "default": "data"
  374. }
  375. },
  376. {
  377. "variable": "acl_entries",
  378. "label": "ACL Configuration",
  379. "schema": {
  380. "type": "dict",
  381. "show_if": [
  382. [
  383. "acl_enable",
  384. "=",
  385. true
  386. ]
  387. ],
  388. "attrs": []
  389. }
  390. }
  391. ]
  392. }
  393. },
  394. {
  395. "variable": "host_path_config",
  396. "label": "Host Path Configuration",
  397. "schema": {
  398. "type": "dict",
  399. "show_if": [
  400. [
  401. "type",
  402. "=",
  403. "host_path"
  404. ]
  405. ],
  406. "attrs": [
  407. {
  408. "variable": "acl_enable",
  409. "label": "Enable ACL",
  410. "description": "Enable ACL for the storage.",
  411. "schema": {
  412. "type": "boolean",
  413. "default": false
  414. }
  415. },
  416. {
  417. "variable": "acl",
  418. "label": "ACL Configuration",
  419. "schema": {
  420. "type": "dict",
  421. "show_if": [
  422. [
  423. "acl_enable",
  424. "=",
  425. true
  426. ]
  427. ],
  428. "attrs": [],
  429. "$ref": [
  430. "normalize/acl"
  431. ]
  432. }
  433. },
  434. {
  435. "variable": "path",
  436. "label": "Host Path",
  437. "description": "The host path to use for storage.",
  438. "schema": {
  439. "type": "hostpath",
  440. "show_if": [
  441. [
  442. "acl_enable",
  443. "=",
  444. false
  445. ]
  446. ],
  447. "required": true
  448. }
  449. }
  450. ]
  451. }
  452. }
  453. ]
  454. }
  455. },
  456. {
  457. "variable": "plugins",
  458. "label": "Grafana Plugins Storage",
  459. "description": "The path to store Grafana Plugins.",
  460. "schema": {
  461. "type": "dict",
  462. "attrs": [
  463. {
  464. "variable": "type",
  465. "label": "Type",
  466. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  467. "schema": {
  468. "type": "string",
  469. "required": true,
  470. "default": "ix_volume",
  471. "enum": [
  472. {
  473. "value": "host_path",
  474. "description": "Host Path (Path that already exists on the system)"
  475. },
  476. {
  477. "value": "ix_volume",
  478. "description": "ixVolume (Dataset created automatically by the system)"
  479. }
  480. ]
  481. }
  482. },
  483. {
  484. "variable": "ix_volume_config",
  485. "label": "ixVolume Configuration",
  486. "description": "The configuration for the ixVolume dataset.",
  487. "schema": {
  488. "type": "dict",
  489. "show_if": [
  490. [
  491. "type",
  492. "=",
  493. "ix_volume"
  494. ]
  495. ],
  496. "$ref": [
  497. "normalize/ix_volume"
  498. ],
  499. "attrs": [
  500. {
  501. "variable": "acl_enable",
  502. "label": "Enable ACL",
  503. "description": "Enable ACL for the storage.",
  504. "schema": {
  505. "type": "boolean",
  506. "default": false
  507. }
  508. },
  509. {
  510. "variable": "dataset_name",
  511. "label": "Dataset Name",
  512. "description": "The name of the dataset to use for storage.",
  513. "schema": {
  514. "type": "string",
  515. "required": true,
  516. "hidden": true,
  517. "default": "plugins"
  518. }
  519. },
  520. {
  521. "variable": "acl_entries",
  522. "label": "ACL Configuration",
  523. "schema": {
  524. "type": "dict",
  525. "show_if": [
  526. [
  527. "acl_enable",
  528. "=",
  529. true
  530. ]
  531. ],
  532. "attrs": []
  533. }
  534. }
  535. ]
  536. }
  537. },
  538. {
  539. "variable": "host_path_config",
  540. "label": "Host Path Configuration",
  541. "schema": {
  542. "type": "dict",
  543. "show_if": [
  544. [
  545. "type",
  546. "=",
  547. "host_path"
  548. ]
  549. ],
  550. "attrs": [
  551. {
  552. "variable": "acl_enable",
  553. "label": "Enable ACL",
  554. "description": "Enable ACL for the storage.",
  555. "schema": {
  556. "type": "boolean",
  557. "default": false
  558. }
  559. },
  560. {
  561. "variable": "acl",
  562. "label": "ACL Configuration",
  563. "schema": {
  564. "type": "dict",
  565. "show_if": [
  566. [
  567. "acl_enable",
  568. "=",
  569. true
  570. ]
  571. ],
  572. "attrs": [],
  573. "$ref": [
  574. "normalize/acl"
  575. ]
  576. }
  577. },
  578. {
  579. "variable": "path",
  580. "label": "Host Path",
  581. "description": "The host path to use for storage.",
  582. "schema": {
  583. "type": "hostpath",
  584. "show_if": [
  585. [
  586. "acl_enable",
  587. "=",
  588. false
  589. ]
  590. ],
  591. "required": true
  592. }
  593. }
  594. ]
  595. }
  596. }
  597. ]
  598. }
  599. },
  600. {
  601. "variable": "additional_storage",
  602. "label": "Additional Storage",
  603. "schema": {
  604. "type": "list",
  605. "min_length": 1,
  606. "default": [],
  607. "items": [
  608. {
  609. "variable": "storageEntry",
  610. "label": "Storage Entry",
  611. "schema": {
  612. "type": "dict",
  613. "attrs": [
  614. {
  615. "variable": "type",
  616. "label": "Type",
  617. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.</br>\nSMB Share: Is a SMB share that is mounted to as a volume.\n",
  618. "schema": {
  619. "type": "string",
  620. "required": true,
  621. "default": "ix_volume",
  622. "enum": [
  623. {
  624. "value": "host_path",
  625. "description": "Host Path (Path that already exists on the system)"
  626. },
  627. {
  628. "value": "ix_volume",
  629. "description": "ixVolume (Dataset created automatically by the system)"
  630. },
  631. {
  632. "value": "cifs",
  633. "description": "SMB/CIFS Share (Mounts a volume to a SMB share)"
  634. }
  635. ]
  636. }
  637. },
  638. {
  639. "variable": "read_only",
  640. "label": "Read Only",
  641. "description": "Mount the volume as read only.",
  642. "schema": {
  643. "type": "boolean",
  644. "default": false
  645. }
  646. },
  647. {
  648. "variable": "mount_path",
  649. "label": "Mount Path",
  650. "description": "The path inside the container to mount the storage.",
  651. "schema": {
  652. "type": "path",
  653. "required": true
  654. }
  655. },
  656. {
  657. "variable": "host_path_config",
  658. "label": "Host Path Configuration",
  659. "schema": {
  660. "type": "dict",
  661. "show_if": [
  662. [
  663. "type",
  664. "=",
  665. "host_path"
  666. ]
  667. ],
  668. "attrs": [
  669. {
  670. "variable": "acl_enable",
  671. "label": "Enable ACL",
  672. "description": "Enable ACL for the storage.",
  673. "schema": {
  674. "type": "boolean",
  675. "default": false
  676. }
  677. },
  678. {
  679. "variable": "acl",
  680. "label": "ACL Configuration",
  681. "schema": {
  682. "type": "dict",
  683. "show_if": [
  684. [
  685. "acl_enable",
  686. "=",
  687. true
  688. ]
  689. ],
  690. "attrs": [],
  691. "$ref": [
  692. "normalize/acl"
  693. ]
  694. }
  695. },
  696. {
  697. "variable": "path",
  698. "label": "Host Path",
  699. "description": "The host path to use for storage.",
  700. "schema": {
  701. "type": "hostpath",
  702. "show_if": [
  703. [
  704. "acl_enable",
  705. "=",
  706. false
  707. ]
  708. ],
  709. "required": true
  710. }
  711. }
  712. ]
  713. }
  714. },
  715. {
  716. "variable": "ix_volume_config",
  717. "label": "ixVolume Configuration",
  718. "description": "The configuration for the ixVolume dataset.",
  719. "schema": {
  720. "type": "dict",
  721. "show_if": [
  722. [
  723. "type",
  724. "=",
  725. "ix_volume"
  726. ]
  727. ],
  728. "$ref": [
  729. "normalize/ix_volume"
  730. ],
  731. "attrs": [
  732. {
  733. "variable": "acl_enable",
  734. "label": "Enable ACL",
  735. "description": "Enable ACL for the storage.",
  736. "schema": {
  737. "type": "boolean",
  738. "default": false
  739. }
  740. },
  741. {
  742. "variable": "dataset_name",
  743. "label": "Dataset Name",
  744. "description": "The name of the dataset to use for storage.",
  745. "schema": {
  746. "type": "string",
  747. "required": true,
  748. "default": "storage_entry"
  749. }
  750. },
  751. {
  752. "variable": "acl_entries",
  753. "label": "ACL Configuration",
  754. "schema": {
  755. "type": "dict",
  756. "show_if": [
  757. [
  758. "acl_enable",
  759. "=",
  760. true
  761. ]
  762. ],
  763. "attrs": [],
  764. "$ref": [
  765. "normalize/acl"
  766. ]
  767. }
  768. }
  769. ]
  770. }
  771. },
  772. {
  773. "variable": "cifs_config",
  774. "label": "SMB Configuration",
  775. "description": "The configuration for the SMB dataset.",
  776. "schema": {
  777. "type": "dict",
  778. "show_if": [
  779. [
  780. "type",
  781. "=",
  782. "cifs"
  783. ]
  784. ],
  785. "attrs": [
  786. {
  787. "variable": "server",
  788. "label": "Server",
  789. "description": "The server to mount the SMB share.",
  790. "schema": {
  791. "type": "string",
  792. "required": true
  793. }
  794. },
  795. {
  796. "variable": "path",
  797. "label": "Path",
  798. "description": "The path to mount the SMB share.",
  799. "schema": {
  800. "type": "string",
  801. "required": true
  802. }
  803. },
  804. {
  805. "variable": "username",
  806. "label": "Username",
  807. "description": "The username to use for the SMB share.",
  808. "schema": {
  809. "type": "string",
  810. "required": true
  811. }
  812. },
  813. {
  814. "variable": "password",
  815. "label": "Password",
  816. "description": "The password to use for the SMB share.",
  817. "schema": {
  818. "type": "string",
  819. "required": true,
  820. "private": true
  821. }
  822. },
  823. {
  824. "variable": "domain",
  825. "label": "Domain",
  826. "description": "The domain to use for the SMB share.",
  827. "schema": {
  828. "type": "string"
  829. }
  830. }
  831. ]
  832. }
  833. }
  834. ]
  835. }
  836. }
  837. ]
  838. }
  839. }
  840. ]
  841. }
  842. },
  843. {
  844. "variable": "labels",
  845. "label": "",
  846. "group": "Labels Configuration",
  847. "schema": {
  848. "type": "list",
  849. "default": [],
  850. "items": [
  851. {
  852. "variable": "label",
  853. "label": "Label",
  854. "schema": {
  855. "type": "dict",
  856. "attrs": [
  857. {
  858. "variable": "key",
  859. "label": "Key",
  860. "schema": {
  861. "type": "string",
  862. "required": true
  863. }
  864. },
  865. {
  866. "variable": "value",
  867. "label": "Value",
  868. "schema": {
  869. "type": "string",
  870. "required": true
  871. }
  872. },
  873. {
  874. "variable": "containers",
  875. "label": "Containers",
  876. "description": "Containers where the label should be applied",
  877. "schema": {
  878. "type": "list",
  879. "items": [
  880. {
  881. "variable": "container",
  882. "label": "Container",
  883. "schema": {
  884. "type": "string",
  885. "required": true,
  886. "enum": [
  887. {
  888. "value": "grafana",
  889. "description": "grafana"
  890. }
  891. ]
  892. }
  893. }
  894. ]
  895. }
  896. }
  897. ]
  898. }
  899. }
  900. ]
  901. }
  902. },
  903. {
  904. "variable": "resources",
  905. "label": "",
  906. "group": "Resources Configuration",
  907. "schema": {
  908. "type": "dict",
  909. "attrs": [
  910. {
  911. "variable": "limits",
  912. "label": "Limits",
  913. "schema": {
  914. "type": "dict",
  915. "attrs": [
  916. {
  917. "variable": "cpus",
  918. "label": "CPUs",
  919. "description": "CPUs limit for Grafana.",
  920. "schema": {
  921. "type": "int",
  922. "default": 2,
  923. "required": true
  924. }
  925. },
  926. {
  927. "variable": "memory",
  928. "label": "Memory (in MB)",
  929. "description": "Memory limit for Grafana.",
  930. "schema": {
  931. "type": "int",
  932. "default": 4096,
  933. "required": true
  934. }
  935. }
  936. ]
  937. }
  938. }
  939. ]
  940. }
  941. }
  942. ]
  943. },
  944. "readme": "<h1>Grafana</h1> <p><a href=\"https://grafana.com/\">Grafana</a> is the open source analytics &amp; monitoring solution for every database.</p> <p>Additional configuration can be made by adding additional environment variables Here is the available <a href=\"https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/\">configuration documentation</a></p> <p>Use the following syntax: <code>GF_[SECTION-NAME]_[KEY-NAME]</code></p> <p>Example: <code>GF_SMTP_ENABLED</code></p>",
  945. "changelog": null,
  946. "chart_metadata": {
  947. "annotations": {
  948. "min_scale_version": "24.10.2.2"
  949. },
  950. "app_version": "12.1.1",
  951. "capabilities": [],
  952. "categories": [
  953. "productivity"
  954. ],
  955. "changelog_url": "https://grafana.com/docs/grafana/latest/whatsnew/",
  956. "date_added": "2024-08-01",
  957. "description": "Grafana is the open source analytics & monitoring solution for every database.",
  958. "home": "https://grafana.com",
  959. "host_mounts": [],
  960. "icon": "https://media.sys.truenas.net/apps/grafana/icons/icon.png",
  961. "keywords": [
  962. "analytics",
  963. "monitoring",
  964. "metrics",
  965. "dashboards"
  966. ],
  967. "lib_version": "2.1.49",
  968. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  969. "maintainers": [
  970. {
  971. "email": "dev@ixsystems.com",
  972. "name": "truenas",
  973. "url": "https://www.truenas.com/"
  974. }
  975. ],
  976. "name": "grafana",
  977. "run_as_context": [
  978. {
  979. "description": "Grafana runs as any non-root user.",
  980. "gid": 568,
  981. "group_name": "grafana runs as any non-root user.",
  982. "uid": 568,
  983. "user_name": "grafana runs as any non-root user."
  984. }
  985. ],
  986. "screenshots": [
  987. "https://media.sys.truenas.net/apps/grafana/screenshots/screenshot1.png",
  988. "https://media.sys.truenas.net/apps/grafana/screenshots/screenshot2.png"
  989. ],
  990. "sources": [
  991. "https://hub.docker.com/r/grafana/grafana",
  992. "https://github.com/grafana"
  993. ],
  994. "title": "Grafana",
  995. "train": "community",
  996. "version": "1.3.9"
  997. }
  998. }
  999. }