app_versions.json 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825
  1. {
  2. "1.0.6": {
  3. "healthy": true,
  4. "supported": true,
  5. "healthy_error": null,
  6. "location": "/__w/apps/apps/trains/dev/docker-socket-proxy/1.0.6",
  7. "last_update": "2025-09-05 14:25:56",
  8. "required_features": [],
  9. "human_version": "v0.4.1_1.0.6",
  10. "version": "1.0.6",
  11. "app_metadata": {
  12. "app_version": "v0.4.1",
  13. "capabilities": [],
  14. "categories": [
  15. "development"
  16. ],
  17. "date_added": "2025-07-03",
  18. "description": "Docker Socket Proxy is a security-enhanced proxy for the Docker Socket.",
  19. "home": "https://github.com/Tecnativa/docker-socket-proxy",
  20. "host_mounts": [],
  21. "icon": "https://media.sys.truenas.net/apps/ix-app/icons/icon.webp",
  22. "keywords": [],
  23. "lib_version": "2.1.49",
  24. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  25. "maintainers": [
  26. {
  27. "email": "dev@ixsystems.com",
  28. "name": "truenas",
  29. "url": "https://www.truenas.com/"
  30. }
  31. ],
  32. "name": "docker-socket-proxy",
  33. "run_as_context": [
  34. {
  35. "description": "Docker Socket Proxy runs as root user.",
  36. "gid": 0,
  37. "group_name": "root",
  38. "uid": 0,
  39. "user_name": "root"
  40. }
  41. ],
  42. "screenshots": [],
  43. "sources": [
  44. "https://github.com/Tecnativa/docker-socket-proxy"
  45. ],
  46. "title": "Docker Socket Proxy",
  47. "train": "dev",
  48. "version": "1.0.6"
  49. },
  50. "schema": {
  51. "groups": [
  52. {
  53. "name": "Docker Socket Proxy Configuration",
  54. "description": "Configure Docker Socket Proxy"
  55. },
  56. {
  57. "name": "Network Configuration",
  58. "description": "Configure Network for Docker Socket Proxy"
  59. },
  60. {
  61. "name": "Storage Configuration",
  62. "description": "Configure Storage for Docker Socket Proxy"
  63. },
  64. {
  65. "name": "Labels Configuration",
  66. "description": "Configure Labels for Docker Socket Proxy"
  67. },
  68. {
  69. "name": "Resources Configuration",
  70. "description": "Configure Resources for Docker Socket Proxy"
  71. }
  72. ],
  73. "questions": [
  74. {
  75. "variable": "TZ",
  76. "group": "Docker Socket Proxy Configuration",
  77. "label": "Timezone",
  78. "schema": {
  79. "type": "string",
  80. "default": "Etc/UTC",
  81. "required": true,
  82. "$ref": [
  83. "definitions/timezone"
  84. ]
  85. }
  86. },
  87. {
  88. "variable": "socket_proxy",
  89. "label": "",
  90. "group": "Docker Socket Proxy Configuration",
  91. "description": "For more information what each option does, please refer to the documentation of the Docker Socket Proxy project.</br>\nDocumentation at https://github.com/Tecnativa/docker-socket-proxy?tab=readme-ov-file#grant-or-revoke-access-to-certain-api-sections\n",
  92. "schema": {
  93. "type": "dict",
  94. "attrs": [
  95. {
  96. "variable": "allow_restarts",
  97. "label": "Allow Restarts",
  98. "schema": {
  99. "type": "boolean",
  100. "default": true
  101. }
  102. },
  103. {
  104. "variable": "allow_start",
  105. "label": "Allow Start",
  106. "schema": {
  107. "type": "boolean",
  108. "default": true
  109. }
  110. },
  111. {
  112. "variable": "allow_stop",
  113. "label": "Allow Stop",
  114. "schema": {
  115. "type": "boolean",
  116. "default": true
  117. }
  118. },
  119. {
  120. "variable": "auth",
  121. "label": "Auth",
  122. "schema": {
  123. "type": "boolean",
  124. "default": true
  125. }
  126. },
  127. {
  128. "variable": "build",
  129. "label": "Build",
  130. "schema": {
  131. "type": "boolean",
  132. "default": true
  133. }
  134. },
  135. {
  136. "variable": "commit",
  137. "label": "Commit",
  138. "schema": {
  139. "type": "boolean",
  140. "default": true
  141. }
  142. },
  143. {
  144. "variable": "configs",
  145. "label": "Configs",
  146. "schema": {
  147. "type": "boolean",
  148. "default": true
  149. }
  150. },
  151. {
  152. "variable": "containers",
  153. "label": "Containers",
  154. "schema": {
  155. "type": "boolean",
  156. "default": true
  157. }
  158. },
  159. {
  160. "variable": "distribution",
  161. "label": "Distribution",
  162. "schema": {
  163. "type": "boolean",
  164. "default": true
  165. }
  166. },
  167. {
  168. "variable": "events",
  169. "label": "Events",
  170. "schema": {
  171. "type": "boolean",
  172. "default": true
  173. }
  174. },
  175. {
  176. "variable": "exec",
  177. "label": "Exec",
  178. "schema": {
  179. "type": "boolean",
  180. "default": true
  181. }
  182. },
  183. {
  184. "variable": "grpc",
  185. "label": "gRPC",
  186. "schema": {
  187. "type": "boolean",
  188. "default": true
  189. }
  190. },
  191. {
  192. "variable": "images",
  193. "label": "Images",
  194. "schema": {
  195. "type": "boolean",
  196. "default": true
  197. }
  198. },
  199. {
  200. "variable": "info",
  201. "label": "Info",
  202. "schema": {
  203. "type": "boolean",
  204. "default": true
  205. }
  206. },
  207. {
  208. "variable": "networks",
  209. "label": "Networks",
  210. "schema": {
  211. "type": "boolean",
  212. "default": true
  213. }
  214. },
  215. {
  216. "variable": "nodes",
  217. "label": "Nodes",
  218. "schema": {
  219. "type": "boolean",
  220. "default": true
  221. }
  222. },
  223. {
  224. "variable": "ping",
  225. "label": "Ping",
  226. "schema": {
  227. "type": "boolean",
  228. "default": true
  229. }
  230. },
  231. {
  232. "variable": "plugins",
  233. "label": "Plugins",
  234. "schema": {
  235. "type": "boolean",
  236. "default": true
  237. }
  238. },
  239. {
  240. "variable": "post",
  241. "label": "Post",
  242. "schema": {
  243. "type": "boolean",
  244. "default": true
  245. }
  246. },
  247. {
  248. "variable": "secrets",
  249. "label": "Secrets",
  250. "schema": {
  251. "type": "boolean",
  252. "default": true
  253. }
  254. },
  255. {
  256. "variable": "services",
  257. "label": "Services",
  258. "schema": {
  259. "type": "boolean",
  260. "default": true
  261. }
  262. },
  263. {
  264. "variable": "session",
  265. "label": "Session",
  266. "schema": {
  267. "type": "boolean",
  268. "default": true
  269. }
  270. },
  271. {
  272. "variable": "swarm",
  273. "label": "Swarm",
  274. "schema": {
  275. "type": "boolean",
  276. "default": true
  277. }
  278. },
  279. {
  280. "variable": "system",
  281. "label": "System",
  282. "schema": {
  283. "type": "boolean",
  284. "default": true
  285. }
  286. },
  287. {
  288. "variable": "tasks",
  289. "label": "Tasks",
  290. "schema": {
  291. "type": "boolean",
  292. "default": true
  293. }
  294. },
  295. {
  296. "variable": "version",
  297. "label": "Version",
  298. "schema": {
  299. "type": "boolean",
  300. "default": true
  301. }
  302. },
  303. {
  304. "variable": "volumes",
  305. "label": "Volumes",
  306. "schema": {
  307. "type": "boolean",
  308. "default": true
  309. }
  310. },
  311. {
  312. "variable": "additional_envs",
  313. "label": "Additional Environment Variables",
  314. "schema": {
  315. "type": "list",
  316. "default": [],
  317. "items": [
  318. {
  319. "variable": "env",
  320. "label": "Environment Variable",
  321. "schema": {
  322. "type": "dict",
  323. "attrs": [
  324. {
  325. "variable": "name",
  326. "label": "Name",
  327. "schema": {
  328. "type": "string",
  329. "required": true
  330. }
  331. },
  332. {
  333. "variable": "value",
  334. "label": "Value",
  335. "schema": {
  336. "type": "string"
  337. }
  338. }
  339. ]
  340. }
  341. }
  342. ]
  343. }
  344. }
  345. ]
  346. }
  347. },
  348. {
  349. "variable": "network",
  350. "label": "",
  351. "group": "Network Configuration",
  352. "schema": {
  353. "type": "dict",
  354. "attrs": [
  355. {
  356. "variable": "tcp_port",
  357. "label": "TCP Port",
  358. "schema": {
  359. "type": "dict",
  360. "attrs": [
  361. {
  362. "variable": "bind_mode",
  363. "label": "Port Bind Mode",
  364. "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",
  365. "schema": {
  366. "type": "string",
  367. "default": "published",
  368. "enum": [
  369. {
  370. "value": "published",
  371. "description": "Publish port on the host for external access"
  372. },
  373. {
  374. "value": "",
  375. "description": "None"
  376. }
  377. ]
  378. }
  379. },
  380. {
  381. "variable": "port_number",
  382. "label": "Port Number",
  383. "schema": {
  384. "type": "int",
  385. "default": 2375,
  386. "show_if": [
  387. [
  388. "bind_mode",
  389. "=",
  390. "published"
  391. ]
  392. ],
  393. "min": 1,
  394. "max": 65535,
  395. "required": true
  396. }
  397. },
  398. {
  399. "variable": "host_ips",
  400. "label": "Host IPs",
  401. "description": "IPs on the host to bind this port",
  402. "schema": {
  403. "type": "list",
  404. "show_if": [
  405. [
  406. "bind_mode",
  407. "=",
  408. "published"
  409. ]
  410. ],
  411. "default": [],
  412. "items": [
  413. {
  414. "variable": "host_ip",
  415. "label": "Host IP",
  416. "schema": {
  417. "type": "string",
  418. "required": true,
  419. "$ref": [
  420. "definitions/node_bind_ip"
  421. ]
  422. }
  423. }
  424. ]
  425. }
  426. }
  427. ]
  428. }
  429. }
  430. ]
  431. }
  432. },
  433. {
  434. "variable": "storage",
  435. "label": "",
  436. "group": "Storage Configuration",
  437. "schema": {
  438. "type": "dict",
  439. "attrs": [
  440. {
  441. "variable": "additional_storage",
  442. "label": "Additional Storage",
  443. "schema": {
  444. "type": "list",
  445. "default": [],
  446. "items": [
  447. {
  448. "variable": "storageEntry",
  449. "label": "Storage Entry",
  450. "schema": {
  451. "type": "dict",
  452. "attrs": [
  453. {
  454. "variable": "type",
  455. "label": "Type",
  456. "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",
  457. "schema": {
  458. "type": "string",
  459. "required": true,
  460. "default": "ix_volume",
  461. "enum": [
  462. {
  463. "value": "host_path",
  464. "description": "Host Path (Path that already exists on the system)"
  465. },
  466. {
  467. "value": "ix_volume",
  468. "description": "ixVolume (Dataset created automatically by the system)"
  469. },
  470. {
  471. "value": "cifs",
  472. "description": "SMB/CIFS Share (Mounts a volume to a SMB share)"
  473. }
  474. ]
  475. }
  476. },
  477. {
  478. "variable": "read_only",
  479. "label": "Read Only",
  480. "description": "Mount the volume as read only.",
  481. "schema": {
  482. "type": "boolean",
  483. "default": false
  484. }
  485. },
  486. {
  487. "variable": "mount_path",
  488. "label": "Mount Path",
  489. "description": "The path inside the container to mount the storage.",
  490. "schema": {
  491. "type": "path",
  492. "required": true
  493. }
  494. },
  495. {
  496. "variable": "host_path_config",
  497. "label": "Host Path Configuration",
  498. "schema": {
  499. "type": "dict",
  500. "show_if": [
  501. [
  502. "type",
  503. "=",
  504. "host_path"
  505. ]
  506. ],
  507. "attrs": [
  508. {
  509. "variable": "acl_enable",
  510. "label": "Enable ACL",
  511. "description": "Enable ACL for the storage.",
  512. "schema": {
  513. "type": "boolean",
  514. "default": false
  515. }
  516. },
  517. {
  518. "variable": "acl",
  519. "label": "ACL Configuration",
  520. "schema": {
  521. "type": "dict",
  522. "show_if": [
  523. [
  524. "acl_enable",
  525. "=",
  526. true
  527. ]
  528. ],
  529. "attrs": [],
  530. "$ref": [
  531. "normalize/acl"
  532. ]
  533. }
  534. },
  535. {
  536. "variable": "path",
  537. "label": "Host Path",
  538. "description": "The host path to use for storage.",
  539. "schema": {
  540. "type": "hostpath",
  541. "show_if": [
  542. [
  543. "acl_enable",
  544. "=",
  545. false
  546. ]
  547. ],
  548. "required": true
  549. }
  550. }
  551. ]
  552. }
  553. },
  554. {
  555. "variable": "ix_volume_config",
  556. "label": "ixVolume Configuration",
  557. "description": "The configuration for the ixVolume dataset.",
  558. "schema": {
  559. "type": "dict",
  560. "show_if": [
  561. [
  562. "type",
  563. "=",
  564. "ix_volume"
  565. ]
  566. ],
  567. "$ref": [
  568. "normalize/ix_volume"
  569. ],
  570. "attrs": [
  571. {
  572. "variable": "acl_enable",
  573. "label": "Enable ACL",
  574. "description": "Enable ACL for the storage.",
  575. "schema": {
  576. "type": "boolean",
  577. "default": false
  578. }
  579. },
  580. {
  581. "variable": "dataset_name",
  582. "label": "Dataset Name",
  583. "description": "The name of the dataset to use for storage.",
  584. "schema": {
  585. "type": "string",
  586. "required": true,
  587. "default": "storage_entry"
  588. }
  589. },
  590. {
  591. "variable": "acl_entries",
  592. "label": "ACL Configuration",
  593. "schema": {
  594. "type": "dict",
  595. "show_if": [
  596. [
  597. "acl_enable",
  598. "=",
  599. true
  600. ]
  601. ],
  602. "attrs": [],
  603. "$ref": [
  604. "normalize/acl"
  605. ]
  606. }
  607. }
  608. ]
  609. }
  610. },
  611. {
  612. "variable": "cifs_config",
  613. "label": "SMB Configuration",
  614. "description": "The configuration for the SMB dataset.",
  615. "schema": {
  616. "type": "dict",
  617. "show_if": [
  618. [
  619. "type",
  620. "=",
  621. "cifs"
  622. ]
  623. ],
  624. "attrs": [
  625. {
  626. "variable": "server",
  627. "label": "Server",
  628. "description": "The server to mount the SMB share.",
  629. "schema": {
  630. "type": "string",
  631. "required": true
  632. }
  633. },
  634. {
  635. "variable": "path",
  636. "label": "Path",
  637. "description": "The path to mount the SMB share.",
  638. "schema": {
  639. "type": "string",
  640. "required": true
  641. }
  642. },
  643. {
  644. "variable": "username",
  645. "label": "Username",
  646. "description": "The username to use for the SMB share.",
  647. "schema": {
  648. "type": "string",
  649. "required": true
  650. }
  651. },
  652. {
  653. "variable": "password",
  654. "label": "Password",
  655. "description": "The password to use for the SMB share.",
  656. "schema": {
  657. "type": "string",
  658. "required": true,
  659. "private": true
  660. }
  661. },
  662. {
  663. "variable": "domain",
  664. "label": "Domain",
  665. "description": "The domain to use for the SMB share.",
  666. "schema": {
  667. "type": "string"
  668. }
  669. }
  670. ]
  671. }
  672. }
  673. ]
  674. }
  675. }
  676. ]
  677. }
  678. }
  679. ]
  680. }
  681. },
  682. {
  683. "variable": "labels",
  684. "label": "",
  685. "group": "Labels Configuration",
  686. "schema": {
  687. "type": "list",
  688. "default": [],
  689. "items": [
  690. {
  691. "variable": "label",
  692. "label": "Label",
  693. "schema": {
  694. "type": "dict",
  695. "attrs": [
  696. {
  697. "variable": "key",
  698. "label": "Key",
  699. "schema": {
  700. "type": "string",
  701. "required": true
  702. }
  703. },
  704. {
  705. "variable": "value",
  706. "label": "Value",
  707. "schema": {
  708. "type": "string",
  709. "required": true
  710. }
  711. },
  712. {
  713. "variable": "containers",
  714. "label": "Containers",
  715. "description": "Containers where the label should be applied",
  716. "schema": {
  717. "type": "list",
  718. "items": [
  719. {
  720. "variable": "container",
  721. "label": "Container",
  722. "schema": {
  723. "type": "string",
  724. "required": true,
  725. "enum": [
  726. {
  727. "value": "docker-socket-proxy",
  728. "description": "docker-socket-proxy"
  729. }
  730. ]
  731. }
  732. }
  733. ]
  734. }
  735. }
  736. ]
  737. }
  738. }
  739. ]
  740. }
  741. },
  742. {
  743. "variable": "resources",
  744. "label": "",
  745. "group": "Resources Configuration",
  746. "schema": {
  747. "type": "dict",
  748. "attrs": [
  749. {
  750. "variable": "limits",
  751. "label": "Limits",
  752. "schema": {
  753. "type": "dict",
  754. "attrs": [
  755. {
  756. "variable": "cpus",
  757. "label": "CPUs",
  758. "description": "CPUs limit for Docker Socket Proxy.",
  759. "schema": {
  760. "type": "int",
  761. "default": 2,
  762. "required": true
  763. }
  764. },
  765. {
  766. "variable": "memory",
  767. "label": "Memory (in MB)",
  768. "description": "Memory limit for Docker Socket Proxy.",
  769. "schema": {
  770. "type": "int",
  771. "default": 4096,
  772. "required": true
  773. }
  774. }
  775. ]
  776. }
  777. }
  778. ]
  779. }
  780. }
  781. ]
  782. },
  783. "readme": "<h1>Docker Socket Proxy</h1> <p><a href=\"https://github.com/Tecnativa/docker-socket-proxy\">Docker Socket Proxy</a> is a security-enhanced proxy for the Docker Socket.</p>",
  784. "changelog": null,
  785. "chart_metadata": {
  786. "app_version": "v0.4.1",
  787. "capabilities": [],
  788. "categories": [
  789. "development"
  790. ],
  791. "date_added": "2025-07-03",
  792. "description": "Docker Socket Proxy is a security-enhanced proxy for the Docker Socket.",
  793. "home": "https://github.com/Tecnativa/docker-socket-proxy",
  794. "host_mounts": [],
  795. "icon": "https://media.sys.truenas.net/apps/ix-app/icons/icon.webp",
  796. "keywords": [],
  797. "lib_version": "2.1.49",
  798. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  799. "maintainers": [
  800. {
  801. "email": "dev@ixsystems.com",
  802. "name": "truenas",
  803. "url": "https://www.truenas.com/"
  804. }
  805. ],
  806. "name": "docker-socket-proxy",
  807. "run_as_context": [
  808. {
  809. "description": "Docker Socket Proxy runs as root user.",
  810. "gid": 0,
  811. "group_name": "root",
  812. "uid": 0,
  813. "user_name": "root"
  814. }
  815. ],
  816. "screenshots": [],
  817. "sources": [
  818. "https://github.com/Tecnativa/docker-socket-proxy"
  819. ],
  820. "title": "Docker Socket Proxy",
  821. "train": "dev",
  822. "version": "1.0.6"
  823. }
  824. }
  825. }