{ "1.0.41": { "healthy": true, "supported": true, "healthy_error": null, "location": "/__w/charts/charts/community/ipfs/1.0.41", "last_update": "2025-02-04 15:56:09", "required_features": [ "normalize/ixVolume" ], "human_version": "v0.33.0_1.0.41", "version": "1.0.41", "chart_metadata": { "name": "ipfs", "description": "Interplanetary Filesystem - the Web3 standard for content-addressing, interoperable with HTTP", "annotations": { "title": "IPFS" }, "type": "application", "version": "1.0.41", "apiVersion": "v2", "appVersion": "v0.33.0", "kubeVersion": ">=1.16.0-0", "maintainers": [ { "name": "truenas", "url": "https://www.truenas.com/", "email": "dev@ixsystems.com" } ], "dependencies": [ { "name": "common", "repository": "file://../../../common", "version": "1.2.9" } ], "home": "https://ipfs.tech/", "icon": "https://media.sys.truenas.net/apps/ipfs/icons/icon.png", "sources": [ "https://github.com/ipfs/kubo", "https://github.com/truenas/charts/tree/master/community/ipfs", "https://ipfs.tech/" ], "keywords": [ "storage", "ipfs", "kubo" ] }, "app_metadata": { "runAsContext": [ { "userName": "ipfs", "groupName": "ipfs", "gid": 568, "uid": 568, "description": "IPFS can run as any non-root user." } ], "capabilities": [], "hostMounts": [] }, "schema": { "groups": [ { "name": "IPFS Configuration", "description": "Configure IPFS" }, { "name": "User and Group Configuration", "description": "Configure User and Group for IPFS" }, { "name": "Network Configuration", "description": "Configure Network for IPFS" }, { "name": "Storage Configuration", "description": "Configure Storage for IPFS" }, { "name": "Resources Configuration", "description": "Configure Resources for IPFS" } ], "portals": { "web_portal": { "protocols": [ "$kubernetes-resource_configmap_portal_protocol" ], "host": [ "$kubernetes-resource_configmap_portal_host" ], "ports": [ "$kubernetes-resource_configmap_portal_port" ], "path": "$kubernetes-resource_configmap_portal_path" } }, "questions": [ { "variable": "ipfsConfig", "label": "", "group": "IPFS Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "additionalEnvs", "label": "Additional Environment Variables", "description": "Configure additional environment variables for IPFS.", "schema": { "type": "list", "default": [], "items": [ { "variable": "env", "label": "Environment Variable", "schema": { "type": "dict", "attrs": [ { "variable": "name", "label": "Name", "schema": { "type": "string", "required": true } }, { "variable": "value", "label": "Value", "schema": { "type": "string", "required": true } } ] } } ] } } ] } }, { "variable": "ipfsRunAs", "label": "", "group": "User and Group Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "user", "label": "User ID", "description": "The user id that IPFS will run as.", "schema": { "type": "int", "min": 568, "default": 568, "required": true } }, { "variable": "group", "label": "Group ID", "description": "The group id that IPFS will run as.", "schema": { "type": "int", "min": 568, "default": 568, "required": true } } ] } }, { "variable": "ipfsNetwork", "label": "", "group": "Network Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "apiPort", "label": "API Port", "description": "The port for the IPFS API (And WebUI).", "schema": { "type": "int", "default": 30010, "min": 9000, "max": 65535, "required": true } }, { "variable": "swarmPort", "label": "Swarm Port", "description": "The port for the IPFS Swarm. Both TCP and UDP", "schema": { "type": "int", "default": 30011, "min": 9000, "max": 65535, "required": true } }, { "variable": "gatewayPort", "label": "Gateway Port", "description": "The port for the IPFS Gateway.", "schema": { "type": "int", "default": 30012, "min": 9000, "max": 65535, "required": true } }, { "variable": "hostNetwork", "label": "Host Network", "description": "Bind to the host network. It's recommended to keep this disabled.\n", "schema": { "type": "boolean", "default": false } } ] } }, { "variable": "ipfsStorage", "label": "", "group": "Storage Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "data", "label": "IPFS Data Storage", "description": "The path to store IPFS data.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "datasetName", "label": "Dataset Name", "schema": { "type": "string", "show_if": [ [ "type", "=", "ixVolume" ] ], "required": true, "hidden": true, "immutable": true, "default": "data", "$ref": [ "normalize/ixVolume" ] } }, { "variable": "hostPath", "label": "Host Path", "schema": { "type": "hostpath", "show_if": [ [ "type", "=", "hostPath" ] ], "required": true } } ] } }, { "variable": "staging", "label": "IPFS Staging Storage", "description": "The path to store IPFS staging storage.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "datasetName", "label": "Dataset Name", "schema": { "type": "string", "show_if": [ [ "type", "=", "ixVolume" ] ], "required": true, "hidden": true, "immutable": true, "default": "staging", "$ref": [ "normalize/ixVolume" ] } }, { "variable": "hostPath", "label": "Host Path", "schema": { "type": "hostpath", "show_if": [ [ "type", "=", "hostPath" ] ], "required": true } } ] } } ] } }, { "variable": "resources", "label": "", "group": "Resources Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "limits", "label": "Limits", "schema": { "type": "dict", "attrs": [ { "variable": "cpu", "label": "CPU", "description": "CPU limit for IPFS.", "schema": { "type": "string", "max_length": 6, "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$", "valid_chars_error": "Valid CPU limit formats are\n- Plain Integer - eg. 1\n- Float - eg. 0.5\n- Milicpu - eg. 500m\n", "default": "4000m", "required": true } }, { "variable": "memory", "label": "Memory", "description": "Memory limit for IPFS.", "schema": { "type": "string", "max_length": 12, "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$", "valid_chars_error": "Valid Memory limit formats are\n- Suffixed with E/P/T/G/M/K - eg. 1G\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi\n- Plain Integer in bytes - eg. 1024\n- Exponent - eg. 134e6\n", "default": "8Gi", "required": true } } ] } } ] } } ] }, "app_readme": "
Interplanetary Filesystem - the Web3 standard for content-addressing, interoperable with HTTP
\n\n", "detailed_readme": "When application is installed, a container will be launched with root privileges.\nThis is required in order to apply the correct permissions to the ipfs directories.\nAfterward, the
\nipfs
container will run as a non-root user (Default:568
).
Interplanetary Filesystem - the Web3 standard for content-addressing, interoperable with HTTP
\n\n", "changelog": null } }When application is installed, a container will be launched with root privileges.\nThis is required in order to apply the correct permissions to the ipfs directories.\nAfterward, the
\nipfs
container will run as a non-root user (Default:568
).