app_versions.json 64 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117
  1. {
  2. "1.1.3": {
  3. "healthy": true,
  4. "supported": true,
  5. "healthy_error": null,
  6. "location": "/__w/charts/charts/community/minecraft/1.1.3",
  7. "last_update": "2023-11-14 10:11:57",
  8. "required_features": [
  9. "definitions/timezone",
  10. "normalize/ixVolume"
  11. ],
  12. "human_version": "2023.11.0_1.1.3",
  13. "version": "1.1.3",
  14. "chart_metadata": {
  15. "name": "minecraft",
  16. "description": "Minecraft is a sandbox game",
  17. "annotations": {
  18. "title": "Minecraft"
  19. },
  20. "type": "application",
  21. "version": "1.1.3",
  22. "apiVersion": "v2",
  23. "appVersion": "2023.11.0",
  24. "kubeVersion": ">=1.16.0-0",
  25. "maintainers": [
  26. {
  27. "name": "truenas",
  28. "url": "https://www.truenas.com/",
  29. "email": "dev@ixsystems.com"
  30. }
  31. ],
  32. "dependencies": [
  33. {
  34. "name": "common",
  35. "repository": "file://../../../common",
  36. "version": "1.2.2"
  37. }
  38. ],
  39. "home": "https://www.minecraft.net/en-us",
  40. "icon": "https://media.sys.truenas.net/apps/minecraft/icons/icon.svg",
  41. "sources": [
  42. "https://www.minecraft.net/en-us",
  43. "https://github.com/truenas/charts/tree/master/community/minecraft",
  44. "https://github.com/itzg/docker-minecraft-server"
  45. ],
  46. "keywords": [
  47. "minecraft"
  48. ]
  49. },
  50. "app_metadata": {
  51. "runAsContext": [
  52. {
  53. "userName": "root",
  54. "groupName": "root",
  55. "gid": 0,
  56. "uid": 0,
  57. "description": "Minecraft requires root privileges to start the Minecraft process"
  58. }
  59. ],
  60. "capabilities": [
  61. {
  62. "name": "CHOWN",
  63. "description": "Minecraft is able to chown files."
  64. },
  65. {
  66. "name": "DAC_OVERRIDE",
  67. "description": "Minecraft is able to bypass permission checks."
  68. },
  69. {
  70. "name": "FOWNER",
  71. "description": "Minecraft is able bypass permission checks for it's sub-processes."
  72. },
  73. {
  74. "name": "SETGID",
  75. "description": "Minecraft is able to set group ID for it's sub-processes."
  76. },
  77. {
  78. "name": "SETUID",
  79. "description": "Minecraft is able to set user ID for it's sub-processes."
  80. }
  81. ],
  82. "hostMounts": []
  83. },
  84. "schema": {
  85. "groups": [
  86. {
  87. "name": "Minecraft Configuration",
  88. "description": "Configure Minecraft"
  89. },
  90. {
  91. "name": "User and Group Configuration",
  92. "description": "Configure User and Group for Minecraft"
  93. },
  94. {
  95. "name": "Network Configuration",
  96. "description": "Configure Network for Minecraft"
  97. },
  98. {
  99. "name": "Storage Configuration",
  100. "description": "Configure Storage for Minecraft"
  101. },
  102. {
  103. "name": "Resources Configuration",
  104. "description": "Configure Resources for Minecraft"
  105. }
  106. ],
  107. "questions": [
  108. {
  109. "variable": "TZ",
  110. "group": "Minecraft Configuration",
  111. "label": "Timezone",
  112. "schema": {
  113. "type": "string",
  114. "default": "America/Los_Angeles",
  115. "required": true,
  116. "$ref": [
  117. "definitions/timezone"
  118. ],
  119. "enum": [
  120. {
  121. "value": "Asia/Damascus",
  122. "description": "'Asia/Damascus' timezone"
  123. },
  124. {
  125. "value": "Asia/Saigon",
  126. "description": "'Asia/Saigon' timezone"
  127. }
  128. ]
  129. }
  130. },
  131. {
  132. "variable": "mcConfig",
  133. "label": "",
  134. "group": "Minecraft Configuration",
  135. "schema": {
  136. "type": "dict",
  137. "attrs": [
  138. {
  139. "variable": "eula",
  140. "label": "EULA",
  141. "description": "Accept the EULA.",
  142. "schema": {
  143. "type": "boolean",
  144. "default": false,
  145. "required": true
  146. }
  147. },
  148. {
  149. "variable": "imageSelector",
  150. "label": "Image",
  151. "description": "The image to use for Minecraft.</br>\nDepending on the image you select, you might\nneed to adjust the Version and Type fields.\n",
  152. "schema": {
  153. "type": "string",
  154. "default": "j17Image",
  155. "required": true,
  156. "enum": [
  157. {
  158. "value": "j8Image",
  159. "description": "Java 8 HotSpot (Alpine)"
  160. },
  161. {
  162. "value": "j8j9Image",
  163. "description": "Java 8 OpenJ9 (Debian)"
  164. },
  165. {
  166. "value": "j8jdkImage",
  167. "description": "Java 8 HotSpot+JDK (Ubuntu)"
  168. },
  169. {
  170. "value": "j8gceImage",
  171. "description": "Java 8 GraalVM CE (Oracle)"
  172. },
  173. {
  174. "value": "j11Image",
  175. "description": "Java 11 HotSpot (Ubuntu)"
  176. },
  177. {
  178. "value": "j11j9Image",
  179. "description": "Java 11 OpenJ9 (Debian)"
  180. },
  181. {
  182. "value": "j11jdkImage",
  183. "description": "Java 11 HotSpot+JDK (Ubuntu)"
  184. },
  185. {
  186. "value": "j17Image",
  187. "description": "Java 17 HotSpot (Ubuntu)"
  188. },
  189. {
  190. "value": "j17j9Image",
  191. "description": "Java 17 OpenJ9 (Debian)"
  192. },
  193. {
  194. "value": "j17jdkImage",
  195. "description": "Java 17 HotSpot+JDK (Ubuntu)"
  196. },
  197. {
  198. "value": "j17gceImage",
  199. "description": "Java 17 GraalVM CE (Oracle)"
  200. },
  201. {
  202. "value": "j17alpineImage",
  203. "description": "Java 17 HotSpot (Alpine)"
  204. },
  205. {
  206. "value": "j19Image",
  207. "description": "Java 19 HotSpot (Ubuntu)"
  208. }
  209. ]
  210. }
  211. },
  212. {
  213. "variable": "type",
  214. "label": "Type",
  215. "description": "The type of Minecraft server to run.</br>\nDepending on the type you select, you might need\nto add additional environment variables. </br>\nhttps://itzg.github.io/docker-minecraft-docs/java/server-types/bukkit-spigot\n",
  216. "schema": {
  217. "type": "string",
  218. "default": "VANILLA",
  219. "required": true,
  220. "enum": [
  221. {
  222. "value": "VANILLA",
  223. "description": "Vanilla"
  224. },
  225. {
  226. "value": "SPIGOT",
  227. "description": "Spigot"
  228. },
  229. {
  230. "value": "BUKKIT",
  231. "description": "Bukkit"
  232. },
  233. {
  234. "value": "FORGE",
  235. "description": "Forge"
  236. },
  237. {
  238. "value": "CATSERVER",
  239. "description": "CatServer"
  240. },
  241. {
  242. "value": "CRUCIBLE",
  243. "description": "Crucible"
  244. },
  245. {
  246. "value": "AUTO_CURSEFORGE",
  247. "description": "Auto CurseForge"
  248. },
  249. {
  250. "value": "CUSTOM",
  251. "description": "Custom"
  252. },
  253. {
  254. "value": "FABRIC",
  255. "description": "Fabric"
  256. },
  257. {
  258. "value": "FTBA",
  259. "description": "Feed The Beast"
  260. },
  261. {
  262. "value": "FORGE",
  263. "description": "Forge"
  264. },
  265. {
  266. "value": "LOLISERVER",
  267. "description": "LoliServer"
  268. },
  269. {
  270. "value": "LIMBO",
  271. "description": "Limbo"
  272. },
  273. {
  274. "value": "MAGMA",
  275. "description": "Magma"
  276. },
  277. {
  278. "value": "MOHIST",
  279. "description": "Mohist"
  280. },
  281. {
  282. "value": "FABRIC",
  283. "description": "Fabric"
  284. },
  285. {
  286. "value": "PAPER",
  287. "description": "Paper"
  288. },
  289. {
  290. "value": "PUFFERFISH",
  291. "description": "Pufferfish"
  292. },
  293. {
  294. "value": "PURPUR",
  295. "description": "Purpur"
  296. },
  297. {
  298. "value": "QUILT",
  299. "description": "Quilt"
  300. },
  301. {
  302. "value": "SPONGEVANILLA",
  303. "description": "SpongeVanilla"
  304. }
  305. ]
  306. }
  307. },
  308. {
  309. "variable": "version",
  310. "label": "Version",
  311. "description": "The minecraft version.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/versions/minecraft\n",
  312. "schema": {
  313. "type": "string",
  314. "default": "LATEST",
  315. "required": true
  316. }
  317. },
  318. {
  319. "variable": "serverName",
  320. "label": "Server Name",
  321. "description": "The name of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/servername\n",
  322. "schema": {
  323. "type": "string",
  324. "default": "Minecraft Server",
  325. "required": true
  326. }
  327. },
  328. {
  329. "variable": "difficulty",
  330. "label": "Difficulty",
  331. "description": "The difficulty of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/difficulty\n",
  332. "schema": {
  333. "type": "string",
  334. "default": "easy",
  335. "required": true,
  336. "enum": [
  337. {
  338. "value": "peaceful",
  339. "description": "Peaceful"
  340. },
  341. {
  342. "value": "easy",
  343. "description": "Easy"
  344. },
  345. {
  346. "value": "normal",
  347. "description": "Normal"
  348. },
  349. {
  350. "value": "hard",
  351. "description": "Hard"
  352. }
  353. ]
  354. }
  355. },
  356. {
  357. "variable": "seed",
  358. "label": "Seed",
  359. "description": "The seed for the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/seed </br>\n(Quotes is handled by the field automatically)\n",
  360. "schema": {
  361. "type": "string",
  362. "default": ""
  363. }
  364. },
  365. {
  366. "variable": "mode",
  367. "label": "Game Mode",
  368. "description": "The game mode of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/gamemode\n",
  369. "schema": {
  370. "type": "string",
  371. "default": "survival",
  372. "required": true,
  373. "enum": [
  374. {
  375. "value": "survival",
  376. "description": "Survival"
  377. },
  378. {
  379. "value": "creative",
  380. "description": "Creative"
  381. },
  382. {
  383. "value": "adventure",
  384. "description": "Adventure"
  385. },
  386. {
  387. "value": "spectator",
  388. "description": "Spectator"
  389. }
  390. ]
  391. }
  392. },
  393. {
  394. "variable": "levelType",
  395. "label": "Level Type",
  396. "description": "The level type of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/#level-type-and-generator-settings\n",
  397. "schema": {
  398. "type": "string",
  399. "default": "minecraft:default",
  400. "required": true,
  401. "enum": [
  402. {
  403. "value": "minecraft:default",
  404. "description": "Default"
  405. },
  406. {
  407. "value": "minecraft:flat",
  408. "description": "Flat"
  409. },
  410. {
  411. "value": "minecraft:large_biomes",
  412. "description": "Large Biomes"
  413. },
  414. {
  415. "value": "minecraft:amplified",
  416. "description": "Amplified"
  417. },
  418. {
  419. "value": "minecraft:single_biome_surface",
  420. "description": "Single Biome Surface"
  421. },
  422. {
  423. "value": "buffet",
  424. "description": "Buffet"
  425. },
  426. {
  427. "value": "customized",
  428. "description": "Customized"
  429. }
  430. ]
  431. }
  432. },
  433. {
  434. "variable": "motd",
  435. "label": "Message of the Day",
  436. "description": "The message of the day for the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/motd\n",
  437. "schema": {
  438. "type": "string",
  439. "default": "Welcome to Minecraft on TrueNAS!",
  440. "required": true
  441. }
  442. },
  443. {
  444. "variable": "enableRcon",
  445. "label": "Enable RCON",
  446. "description": "Enable RCON for the Minecraft server.</br>\nIt is recommended to keep this enabled, as it helps to\nshut down the minecraft server gracefully.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/rcon\n",
  447. "schema": {
  448. "type": "boolean",
  449. "default": true
  450. }
  451. },
  452. {
  453. "variable": "rconPassword",
  454. "label": "RCON Password",
  455. "description": "The RCON password for the Minecraft server.",
  456. "schema": {
  457. "type": "string",
  458. "default": "",
  459. "show_if": [
  460. [
  461. "enableRcon",
  462. "=",
  463. true
  464. ]
  465. ],
  466. "private": true,
  467. "required": true
  468. }
  469. },
  470. {
  471. "variable": "maxPlayers",
  472. "label": "Max Players",
  473. "description": "The maximum number of players that can join the server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxplayers\n",
  474. "schema": {
  475. "type": "int",
  476. "default": 20,
  477. "min": 1,
  478. "required": true
  479. }
  480. },
  481. {
  482. "variable": "maxWorldSize",
  483. "label": "Max World Size",
  484. "description": "The maximum possible size in blocks, expressed as a radius.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxworldsize\n",
  485. "schema": {
  486. "type": "int",
  487. "default": 10000,
  488. "min": 1,
  489. "required": true
  490. }
  491. },
  492. {
  493. "variable": "maxBuildHeight",
  494. "label": "Max Build Height",
  495. "description": "The maximum height in which building is allowed.\nTerrain may still naturally generate above a low height limit.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxbuildheight\n",
  496. "schema": {
  497. "type": "int",
  498. "default": 256,
  499. "min": 1,
  500. "required": true
  501. }
  502. },
  503. {
  504. "variable": "allowNether",
  505. "label": "Allow Nether",
  506. "description": "Allows players to travel to the Nether.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/allownether\n",
  507. "schema": {
  508. "type": "boolean",
  509. "default": true
  510. }
  511. },
  512. {
  513. "variable": "announcePlayerAchievements",
  514. "label": "Announce Player Achievements",
  515. "description": "Allows server to announce when a player gets an achievement.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/announceachievements\n",
  516. "schema": {
  517. "type": "boolean",
  518. "default": true
  519. }
  520. },
  521. {
  522. "variable": "enableCommandBlock",
  523. "label": "Enable Command Block",
  524. "description": "Enables the command blocks.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/enablecommandblock\n",
  525. "schema": {
  526. "type": "boolean",
  527. "default": false
  528. }
  529. },
  530. {
  531. "variable": "forceGameMode",
  532. "label": "Force Game Mode",
  533. "description": "Force players to join in the default game mode.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/forcegamemode\n",
  534. "schema": {
  535. "type": "boolean",
  536. "default": false
  537. }
  538. },
  539. {
  540. "variable": "generateStructures",
  541. "label": "Generate Structures",
  542. "description": "Defines whether structures (such as villages) will be generated.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/generatestructures\n",
  543. "schema": {
  544. "type": "boolean",
  545. "default": true
  546. }
  547. },
  548. {
  549. "variable": "hardcore",
  550. "label": "Hardcore",
  551. "description": "If set to true, players will be set to spectator mode if they die.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/hardcore\n",
  552. "schema": {
  553. "type": "boolean",
  554. "default": false
  555. }
  556. },
  557. {
  558. "variable": "spawnAnimals",
  559. "label": "Spawn Animals",
  560. "description": "Determines if animals will be able to spawn.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnanimals\n",
  561. "schema": {
  562. "type": "boolean",
  563. "default": true
  564. }
  565. },
  566. {
  567. "variable": "spawnNpcs",
  568. "label": "Spawn NPCs",
  569. "description": "Determines if villagers will be spawned.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnnpcs\n",
  570. "schema": {
  571. "type": "boolean",
  572. "default": true
  573. }
  574. },
  575. {
  576. "variable": "spawnMonsters",
  577. "label": "Spawn Monsters",
  578. "description": "Determines if monsters will be spawned.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnmonsters\n",
  579. "schema": {
  580. "type": "boolean",
  581. "default": true
  582. }
  583. },
  584. {
  585. "variable": "spawnProtection",
  586. "label": "Spawn Protection",
  587. "description": "The radius of the spawn protection.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnprotection\n",
  588. "schema": {
  589. "type": "int",
  590. "default": 16,
  591. "min": 0,
  592. "required": true
  593. }
  594. },
  595. {
  596. "variable": "pvp",
  597. "label": "PVP",
  598. "description": "Determines if PVP will be enabled.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/pvp\n",
  599. "schema": {
  600. "type": "boolean",
  601. "default": true
  602. }
  603. },
  604. {
  605. "variable": "allowFlight",
  606. "label": "Allow Flight",
  607. "description": "Allows users to use flight on your server while in Survival mode,\nif they have a mod that provides flight installed.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/allowflight\n",
  608. "schema": {
  609. "type": "boolean",
  610. "default": false
  611. }
  612. },
  613. {
  614. "variable": "viewDistance",
  615. "label": "View Distance",
  616. "description": "Sets the amount of world data the server sends the client,\nmeasured in chunks in each direction of the player (radius, not diameter).\nIt determines the server-side viewing distance.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/viewdistance\n",
  617. "schema": {
  618. "type": "int",
  619. "default": 10,
  620. "min": 3,
  621. "max": 32,
  622. "required": true
  623. }
  624. },
  625. {
  626. "variable": "onlineMode",
  627. "label": "Online Mode",
  628. "description": "If set to true, the server will attempt to authenticate clients\nconnecting to it with the Minecraft account database.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/onlinemode\n",
  629. "schema": {
  630. "type": "boolean",
  631. "default": true
  632. }
  633. },
  634. {
  635. "variable": "maxTickTime",
  636. "label": "Max Tick Time",
  637. "description": "The maximum number of milliseconds a single tick may take\nbefore the server watchdog stops the server with the message,\nA single server tick took 60.00 seconds (should be max 0.05);\nConsidering it to be crashed, server will forcibly shutdown.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxticktime\n",
  638. "schema": {
  639. "type": "int",
  640. "default": 60000,
  641. "min": 0,
  642. "required": true
  643. }
  644. },
  645. {
  646. "variable": "ops",
  647. "label": "Operators / Administrators",
  648. "description": "A list of player names who should be considered operators.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/ops\n",
  649. "schema": {
  650. "type": "list",
  651. "default": [],
  652. "items": [
  653. {
  654. "variable": "opPlayer",
  655. "label": "OP Player",
  656. "schema": {
  657. "type": "string",
  658. "default": "",
  659. "required": true
  660. }
  661. }
  662. ]
  663. }
  664. },
  665. {
  666. "variable": "whitelist",
  667. "label": "Whitelist",
  668. "description": "A list of player names who are allowed to play on the server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/whitelist\n",
  669. "schema": {
  670. "type": "list",
  671. "default": [],
  672. "items": [
  673. {
  674. "variable": "whitePlayer",
  675. "label": "Whitelisted Player",
  676. "schema": {
  677. "type": "string",
  678. "default": "",
  679. "required": true
  680. }
  681. }
  682. ]
  683. }
  684. },
  685. {
  686. "variable": "additionalEnvs",
  687. "label": "Additional Environment Variables",
  688. "description": "Configure additional environment variables for Minecraft.",
  689. "schema": {
  690. "type": "list",
  691. "default": [],
  692. "items": [
  693. {
  694. "variable": "env",
  695. "label": "Environment Variable",
  696. "schema": {
  697. "type": "dict",
  698. "attrs": [
  699. {
  700. "variable": "name",
  701. "label": "Name",
  702. "schema": {
  703. "type": "string",
  704. "required": true
  705. }
  706. },
  707. {
  708. "variable": "value",
  709. "label": "Value",
  710. "schema": {
  711. "type": "string",
  712. "required": true
  713. }
  714. }
  715. ]
  716. }
  717. }
  718. ]
  719. }
  720. }
  721. ]
  722. }
  723. },
  724. {
  725. "variable": "mcID",
  726. "label": "",
  727. "group": "User and Group Configuration",
  728. "schema": {
  729. "type": "dict",
  730. "attrs": [
  731. {
  732. "variable": "user",
  733. "label": "User ID",
  734. "description": "The user id that Minecraft files will be owned by.",
  735. "schema": {
  736. "type": "int",
  737. "min": 568,
  738. "default": 568,
  739. "required": true
  740. }
  741. },
  742. {
  743. "variable": "group",
  744. "label": "Group ID",
  745. "description": "The group id that Minecraft files will be owned by.",
  746. "schema": {
  747. "type": "int",
  748. "min": 568,
  749. "default": 568,
  750. "required": true
  751. }
  752. }
  753. ]
  754. }
  755. },
  756. {
  757. "variable": "mcNetwork",
  758. "label": "",
  759. "group": "Network Configuration",
  760. "schema": {
  761. "type": "dict",
  762. "attrs": [
  763. {
  764. "variable": "hostNetwork",
  765. "label": "Host Network",
  766. "description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
  767. "schema": {
  768. "type": "boolean",
  769. "default": false
  770. }
  771. },
  772. {
  773. "variable": "serverPort",
  774. "label": "Server Port",
  775. "description": "The port for the Minecraft Server.</br>\nThis will apply to both external and internal ports.\n",
  776. "schema": {
  777. "type": "int",
  778. "default": 25535,
  779. "min": 9000,
  780. "max": 65535,
  781. "required": true
  782. }
  783. },
  784. {
  785. "variable": "rconPort",
  786. "label": "RCON Port",
  787. "description": "The RCON port for the Minecraft.</br>\nThis will apply to both external and internal ports.\n",
  788. "schema": {
  789. "type": "int",
  790. "default": 25575,
  791. "min": 9000,
  792. "max": 65535,
  793. "required": true
  794. }
  795. }
  796. ]
  797. }
  798. },
  799. {
  800. "variable": "mcStorage",
  801. "label": "",
  802. "group": "Storage Configuration",
  803. "schema": {
  804. "type": "dict",
  805. "attrs": [
  806. {
  807. "variable": "data",
  808. "label": "Minecraft Data Storage",
  809. "description": "The path to store Minecraft Data.",
  810. "schema": {
  811. "type": "dict",
  812. "attrs": [
  813. {
  814. "variable": "type",
  815. "label": "Type",
  816. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  817. "schema": {
  818. "type": "string",
  819. "required": true,
  820. "immutable": true,
  821. "default": "ixVolume",
  822. "enum": [
  823. {
  824. "value": "hostPath",
  825. "description": "Host Path (Path that already exists on the system)"
  826. },
  827. {
  828. "value": "ixVolume",
  829. "description": "ixVolume (Dataset created automatically by the system)"
  830. }
  831. ]
  832. }
  833. },
  834. {
  835. "variable": "datasetName",
  836. "label": "Dataset Name",
  837. "schema": {
  838. "type": "string",
  839. "show_if": [
  840. [
  841. "type",
  842. "=",
  843. "ixVolume"
  844. ]
  845. ],
  846. "required": true,
  847. "hidden": true,
  848. "immutable": true,
  849. "default": "data",
  850. "$ref": [
  851. "normalize/ixVolume"
  852. ]
  853. }
  854. },
  855. {
  856. "variable": "hostPath",
  857. "label": "Host Path",
  858. "schema": {
  859. "type": "hostpath",
  860. "show_if": [
  861. [
  862. "type",
  863. "=",
  864. "hostPath"
  865. ]
  866. ],
  867. "immutable": true,
  868. "required": true
  869. }
  870. }
  871. ]
  872. }
  873. },
  874. {
  875. "variable": "additionalStorages",
  876. "label": "Additional Storage",
  877. "description": "Additional storage for Minecraft.",
  878. "schema": {
  879. "type": "list",
  880. "default": [],
  881. "items": [
  882. {
  883. "variable": "storageEntry",
  884. "label": "Storage Entry",
  885. "schema": {
  886. "type": "dict",
  887. "attrs": [
  888. {
  889. "variable": "type",
  890. "label": "Type",
  891. "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 a persistent volume claim.\n",
  892. "schema": {
  893. "type": "string",
  894. "required": true,
  895. "default": "ixVolume",
  896. "immutable": true,
  897. "enum": [
  898. {
  899. "value": "hostPath",
  900. "description": "Host Path (Path that already exists on the system)"
  901. },
  902. {
  903. "value": "ixVolume",
  904. "description": "ixVolume (Dataset created automatically by the system)"
  905. },
  906. {
  907. "value": "smb-pv-pvc",
  908. "description": "SMB Share (Mounts a persistent volume claim to a SMB share)"
  909. }
  910. ]
  911. }
  912. },
  913. {
  914. "variable": "mountPath",
  915. "label": "Mount Path",
  916. "description": "The path inside the container to mount the storage.",
  917. "schema": {
  918. "type": "path",
  919. "required": true
  920. }
  921. },
  922. {
  923. "variable": "hostPath",
  924. "label": "Host Path",
  925. "description": "The host path to use for storage.",
  926. "schema": {
  927. "type": "hostpath",
  928. "show_if": [
  929. [
  930. "type",
  931. "=",
  932. "hostPath"
  933. ]
  934. ],
  935. "required": true
  936. }
  937. },
  938. {
  939. "variable": "datasetName",
  940. "label": "Dataset Name",
  941. "description": "The name of the dataset to use for storage.",
  942. "schema": {
  943. "type": "string",
  944. "show_if": [
  945. [
  946. "type",
  947. "=",
  948. "ixVolume"
  949. ]
  950. ],
  951. "required": true,
  952. "immutable": true,
  953. "default": "storage_entry",
  954. "$ref": [
  955. "normalize/ixVolume"
  956. ]
  957. }
  958. },
  959. {
  960. "variable": "server",
  961. "label": "Server",
  962. "description": "The server for the SMB share.",
  963. "schema": {
  964. "type": "string",
  965. "show_if": [
  966. [
  967. "type",
  968. "=",
  969. "smb-pv-pvc"
  970. ]
  971. ],
  972. "required": true
  973. }
  974. },
  975. {
  976. "variable": "share",
  977. "label": "Share",
  978. "description": "The share name for the SMB share.",
  979. "schema": {
  980. "type": "string",
  981. "show_if": [
  982. [
  983. "type",
  984. "=",
  985. "smb-pv-pvc"
  986. ]
  987. ],
  988. "required": true
  989. }
  990. },
  991. {
  992. "variable": "domain",
  993. "label": "Domain (Optional)",
  994. "description": "The domain for the SMB share.",
  995. "schema": {
  996. "type": "string",
  997. "show_if": [
  998. [
  999. "type",
  1000. "=",
  1001. "smb-pv-pvc"
  1002. ]
  1003. ]
  1004. }
  1005. },
  1006. {
  1007. "variable": "username",
  1008. "label": "Username",
  1009. "description": "The username for the SMB share.",
  1010. "schema": {
  1011. "type": "string",
  1012. "show_if": [
  1013. [
  1014. "type",
  1015. "=",
  1016. "smb-pv-pvc"
  1017. ]
  1018. ],
  1019. "required": true
  1020. }
  1021. },
  1022. {
  1023. "variable": "password",
  1024. "label": "Password",
  1025. "description": "The password for the SMB share.",
  1026. "schema": {
  1027. "type": "string",
  1028. "show_if": [
  1029. [
  1030. "type",
  1031. "=",
  1032. "smb-pv-pvc"
  1033. ]
  1034. ],
  1035. "required": true,
  1036. "private": true
  1037. }
  1038. },
  1039. {
  1040. "variable": "size",
  1041. "label": "Size (in Gi)",
  1042. "description": "The size of the volume quota.",
  1043. "schema": {
  1044. "type": "int",
  1045. "show_if": [
  1046. [
  1047. "type",
  1048. "=",
  1049. "smb-pv-pvc"
  1050. ]
  1051. ],
  1052. "required": true,
  1053. "min": 1,
  1054. "default": 1
  1055. }
  1056. }
  1057. ]
  1058. }
  1059. }
  1060. ]
  1061. }
  1062. }
  1063. ]
  1064. }
  1065. },
  1066. {
  1067. "variable": "resources",
  1068. "group": "Resources Configuration",
  1069. "label": "",
  1070. "schema": {
  1071. "type": "dict",
  1072. "attrs": [
  1073. {
  1074. "variable": "limits",
  1075. "label": "Limits",
  1076. "schema": {
  1077. "type": "dict",
  1078. "attrs": [
  1079. {
  1080. "variable": "cpu",
  1081. "label": "CPU",
  1082. "description": "CPU limit for Minecraft.",
  1083. "schema": {
  1084. "type": "string",
  1085. "max_length": 6,
  1086. "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
  1087. "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",
  1088. "default": "4000m",
  1089. "required": true
  1090. }
  1091. },
  1092. {
  1093. "variable": "memory",
  1094. "label": "Memory",
  1095. "description": "Memory limit for Minecraft.",
  1096. "schema": {
  1097. "type": "string",
  1098. "max_length": 12,
  1099. "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
  1100. "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",
  1101. "default": "8Gi",
  1102. "required": true
  1103. }
  1104. }
  1105. ]
  1106. }
  1107. }
  1108. ]
  1109. }
  1110. }
  1111. ]
  1112. },
  1113. "app_readme": "<h1>Minecraft</h1>\n<p><a href=\"https://www.minecraft.net/en-us\">Minecraft</a> is a sandbox game</p>\n<blockquote>\n<p>Application requires to run as root.</p>\n</blockquote>\n<p>Depending on the <code>Type</code> of server selected, you might need to add additional\ncustom environment variables to the application.</p>\n<p>More info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/java/server-types/bukkit-spigot/\">here</a>\nSelect the type on the sidebar.</p>\n<p>Note that some values are only applicable during the world generation.\nMore info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/\">here</a></p>",
  1114. "detailed_readme": "<h1>Minecraft</h1>\n<p><a href=\"https://www.minecraft.net/en-us\">Minecraft</a> is a sandbox game</p>\n<blockquote>\n<p>Application requires to run as root.</p>\n</blockquote>\n<p>Depending on the <code>Type</code> of server selected, you might need to add additional\ncustom environment variables to the application.</p>\n<p>More info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/java/server-types/bukkit-spigot/\">here</a>\nSelect the type on the sidebar.</p>\n<p>Note that some values are only applicable during the world generation.\nMore info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/\">here</a></p>",
  1115. "changelog": null
  1116. }
  1117. }