OpenCloud
Get Started with Apps!
Keywords: file sharing, collaboration
Train: Community
Home Page: https://opencloud.eu
Added: 2025-09-12
Last Updated: 2025-12-01
Excellent file management and collaboration for public authorities, providers and business - or anyone who values ease of use and digital sovereignty.
Run as Context- OpenCloud runs as any non-root user.
Group: 568 / opencloud
User: 568 / opencloud - Tika runs as a non-root user.
Group: 568 / tika
User: 568 / tika
App Metadata (Raw File)
{
"1.0.23": {
"healthy": true,
"supported": true,
"healthy_error": null,
"location": "/__w/apps/apps/trains/community/opencloud/1.0.23",
"last_update": "2025-12-01 09:44:38",
"required_features": [],
"human_version": "3.7.0_1.0.23",
"version": "1.0.23",
"app_metadata": {
"app_version": "3.7.0",
"capabilities": [],
"categories": [
"storage"
],
"changelog_url": "https://github.com/opencloud-eu/opencloud/releases",
"date_added": "2025-09-12",
"description": "Excellent file management and collaboration for public authorities, providers and business - or anyone who values ease of use and digital sovereignty.",
"home": "https://opencloud.eu",
"host_mounts": [],
"icon": "https://media.sys.truenas.net/apps/opencloud/icons/icon.svg",
"keywords": [
"file sharing",
"collaboration"
],
"lib_version": "2.1.65",
"lib_version_hash": "f92a9ee78c78fc77f86e7d8b545bd4c605c31c599e2c5da59f1615aa516cb8b5",
"maintainers": [
{
"email": "dev@truenas.com",
"name": "truenas",
"url": "https://www.truenas.com/"
}
],
"name": "opencloud",
"run_as_context": [
{
"description": "OpenCloud runs as any non-root user.",
"gid": 568,
"group_name": "opencloud",
"uid": 568,
"user_name": "opencloud"
},
{
"description": "Tika runs as a non-root user.",
"gid": 568,
"group_name": "tika",
"uid": 568,
"user_name": "tika"
}
],
"screenshots": [],
"sources": [
"https://docs.opencloud.eu/",
"https://github.com/OpenCloud/OpenCloud",
"https://hub.docker.com/r/opencloudeu/opencloud-rolling"
],
"title": "OpenCloud",
"train": "community",
"version": "1.0.23"
},
"schema": {
"groups": [
{
"name": "OpenCloud Configuration",
"description": "Configure OpenCloud"
},
{
"name": "User and Group Configuration",
"description": "Configure User and Group for OpenCloud"
},
{
"name": "Network Configuration",
"description": "Configure Network for OpenCloud"
},
{
"name": "Storage Configuration",
"description": "Configure Storage for OpenCloud"
},
{
"name": "Labels Configuration",
"description": "Configure Labels for OpenCloud"
},
{
"name": "Resources Configuration",
"description": "Configure Resources for OpenCloud"
}
],
"questions": [
{
"variable": "TZ",
"group": "OpenCloud Configuration",
"label": "Timezone",
"schema": {
"type": "string",
"default": "Etc/UTC",
"required": true,
"$ref": [
"definitions/timezone"
]
}
},
{
"variable": "opencloud",
"label": "",
"group": "OpenCloud Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "app_url",
"label": "Application URL",
"description": "The URL of the OpenCloud application.</br>\nMust be HTTPS.</br>\nExample: https://cloud.example.com\n",
"schema": {
"type": "uri",
"default": "",
"required": true
}
},
{
"variable": "insecure",
"label": "Insecure Access",
"description": "Enabled: Allow access via self-signed SSL certificates.</br>\nDisabled: Require a valid SSL certificate.</br>\nNote: Even with insecure access enabled, WOPI might still require valid\nSSL certificates depending on the collaboration application used\nand its configuration.\n",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "proof_disable",
"label": "Proof Key Disable",
"description": "Disable proof key validation for Collaboration.",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "jwt_secret",
"label": "JWT Secret",
"description": "The JWT secret for Collaboration.</br>\nIt must match the secret configured in the OnlyOffice server.\n",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
],
[
"type",
"=",
"onlyoffice"
]
],
"default": "",
"private": true
}
},
{
"variable": "full_text_search",
"label": "Full Text Search",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "enabled",
"label": "Enabled",
"schema": {
"type": "boolean",
"default": true
}
}
]
}
},
{
"variable": "collaboration",
"label": "Collaboration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "enabled",
"label": "Enabled",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "type",
"label": "Type",
"schema": {
"type": "string",
"default": "collabora",
"required": true,
"show_if": [
[
"enabled",
"=",
true
]
],
"enum": [
{
"value": "collabora",
"description": "Collabora Online"
},
{
"value": "onlyoffice",
"description": "OnlyOffice"
}
]
}
},
{
"variable": "url",
"label": "URL",
"description": "The URL of the collaboration application. (e.g. https://collabora.example.com)",
"schema": {
"type": "uri",
"default": "",
"show_if": [
[
"enabled",
"=",
true
]
],
"required": true
}
},
{
"variable": "insecure",
"label": "Insecure",
"description": "Allow insecure connections to the collaboration application.",
"schema": {
"type": "boolean",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": false
}
},
{
"variable": "jwt_secret",
"label": "JWT Secret",
"description": "The JWT secret for OnlyOffice authentication. It must match the secret configured in the OnlyOffice server.",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
],
[
"type",
"=",
"onlyoffice"
]
],
"default": "",
"private": true,
"required": true
}
}
]
}
},
{
"variable": "extra_services",
"label": "Extra Services",
"description": "A list of additional services to start in the same OpenCloud process.</br>\nFor example `collaboration`. Additional config may be required depending on the service.\n",
"schema": {
"type": "list",
"items": [
{
"variable": "service",
"label": "Service",
"schema": {
"type": "string",
"default": "",
"required": true
}
}
]
}
},
{
"variable": "smtp",
"label": "SMTP",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "enabled",
"label": "Enabled",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "sender",
"label": "Sender",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": "OpenCloud notifications <notifications@cloud.opencloud.test>",
"required": true
}
},
{
"variable": "host",
"label": "Host",
"description": "SMTP host to connect to.",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": "",
"required": true
}
},
{
"variable": "port",
"label": "Port",
"description": "Port of the SMTP host to connect to.",
"schema": {
"type": "int",
"show_if": [
[
"enabled",
"=",
true
]
],
"min": 1,
"max": 65535,
"required": true
}
},
{
"variable": "insecure",
"label": "Insecure",
"description": "Allow insecure connections to the SMTP server.",
"schema": {
"type": "boolean",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": false
}
},
{
"variable": "encryption",
"label": "Encryption",
"description": "Encryption to use for the SMTP connection.",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": "none",
"required": true,
"enum": [
{
"value": "none",
"description": "None"
},
{
"value": "starttls",
"description": "StartTLS"
},
{
"value": "ssltls",
"description": "SSL/TLS"
}
]
}
},
{
"variable": "username",
"label": "Username",
"description": "Username for the SMTP host to connect to.",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
]
],
"default": ""
}
},
{
"variable": "password",
"label": "Password",
"description": "Password for the SMTP host to connect to.",
"schema": {
"type": "string",
"show_if": [
[
"enabled",
"=",
true
],
[
"username",
"!=",
""
]
],
"private": true
}
}
]
}
},
{
"variable": "apps",
"label": "Apps",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "drawio",
"label": "Draw.io",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "progress_bars",
"label": "Progress Bars",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "json_viewer",
"label": "JSON Viewer",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "external_sites",
"label": "External Sites",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "unzip",
"label": "Unzip",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "cast",
"label": "Cast",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "arcade",
"label": "Arcade",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "maps",
"label": "Maps",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "importer",
"label": "Importer",
"schema": {
"type": "boolean",
"default": true
}
}
]
}
},
{
"variable": "additional_csp",
"label": "Additional Content Security Policy",
"description": "Additional Content Security Policy directives to add to the default CSP.</br>\nThese will be merged with the default CSP directives.</br>\nOnly add here directives/items that are not already present in the CSP File (/etc/opencloud/csp.yaml).</br>\nIf you notice a directive/item is missing that affects the core functionality of OpenCloud, </br>\nor any of the integrations configured via this UI, please open an issue on GitHub.</br>\nCSP keywords should be enclosed in single quotes.</br>\nExample: `'unsafe-eval'`\n",
"schema": {
"type": "list",
"default": [
{
"directive": "connect-src",
"items": [
{
"value": "https://raw.githubusercontent.com/opencloud-eu/awesome-apps/"
},
{
"value": "https://update.opencloud.eu/"
}
]
},
{
"directive": "frame-src",
"items": [
{
"value": "https://embed.diagrams.net/"
}
]
},
{
"directive": "img-src",
"items": [
{
"value": "https://raw.githubusercontent.com/opencloud-eu/awesome-apps/"
},
{
"value": "https://tile.openstreetmap.org/"
}
]
}
],
"items": [
{
"variable": "csp_entry",
"label": "Content Security Policy Entry",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "directive",
"label": "Directive",
"schema": {
"type": "string",
"required": true,
"enum": [
{
"value": "child-src",
"description": "child-src"
},
{
"value": "connect-src",
"description": "connect-src"
},
{
"value": "default-src",
"description": "default-src"
},
{
"value": "font-src",
"description": "font-src"
},
{
"value": "frame-ancestors",
"description": "frame-ancestors"
},
{
"value": "frame-src",
"description": "frame-src"
},
{
"value": "img-src",
"description": "img-src"
},
{
"value": "manifest-src",
"description": "manifest-src"
},
{
"value": "media-src",
"description": "media-src"
},
{
"value": "object-src",
"description": "object-src"
},
{
"value": "script-src",
"description": "script-src"
},
{
"value": "style-src",
"description": "style-src"
}
]
}
},
{
"variable": "items",
"label": "Items",
"schema": {
"type": "list",
"items": [
{
"variable": "item",
"label": "Item",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "value",
"label": "Value",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "placeholder",
"label": "",
"schema": {
"type": "string",
"default": "",
"hidden": true
}
}
]
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "additional_envs",
"label": "Additional Environment Variables",
"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"
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "run_as",
"label": "",
"group": "User and Group Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "user",
"label": "User ID",
"description": "The user id that OpenCloud files will be owned by.",
"schema": {
"type": "int",
"min": 568,
"default": 568,
"required": true
}
},
{
"variable": "group",
"label": "Group ID",
"description": "The group id that OpenCloud files will be owned by.",
"schema": {
"type": "int",
"min": 568,
"default": 568,
"required": true
}
}
]
}
},
{
"variable": "network",
"label": "",
"group": "Network Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "web_port",
"label": "WebUI Port",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "bind_mode",
"label": "Port Bind Mode",
"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",
"schema": {
"type": "string",
"default": "published",
"enum": [
{
"value": "published",
"description": "Publish port on the host for external access"
},
{
"value": "exposed",
"description": "Expose port for inter-container communication"
},
{
"value": "",
"description": "None"
}
]
}
},
{
"variable": "port_number",
"label": "Port Number",
"schema": {
"type": "int",
"default": 30259,
"min": 1,
"max": 65535,
"required": true
}
},
{
"variable": "host_ips",
"label": "Host IPs",
"description": "IPs on the host to bind this port",
"schema": {
"type": "list",
"show_if": [
[
"bind_mode",
"=",
"published"
]
],
"default": [],
"items": [
{
"variable": "host_ip",
"label": "Host IP",
"schema": {
"type": "string",
"required": true,
"$ref": [
"definitions/node_bind_ip"
]
}
}
]
}
}
]
}
},
{
"variable": "metrics_port",
"label": "Metrics Port",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "bind_mode",
"label": "Port Bind Mode",
"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",
"schema": {
"type": "string",
"default": "",
"enum": [
{
"value": "published",
"description": "Publish port on the host for external access"
},
{
"value": "exposed",
"description": "Expose port for inter-container communication"
},
{
"value": "",
"description": "None"
}
]
}
},
{
"variable": "port_number",
"label": "Port Number",
"schema": {
"type": "int",
"default": 30268,
"min": 1,
"max": 65535,
"required": true
}
},
{
"variable": "host_ips",
"label": "Host IPs",
"description": "IPs on the host to bind this port",
"schema": {
"type": "list",
"show_if": [
[
"bind_mode",
"=",
"published"
]
],
"default": [],
"items": [
{
"variable": "host_ip",
"label": "Host IP",
"schema": {
"type": "string",
"required": true,
"$ref": [
"definitions/node_bind_ip"
]
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "storage",
"label": "",
"group": "Storage Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "config",
"label": "Config Storage",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "type",
"label": "Type",
"description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
"schema": {
"type": "string",
"required": true,
"default": "ix_volume",
"enum": [
{
"value": "host_path",
"description": "Host Path (Path that already exists on the system)"
},
{
"value": "ix_volume",
"description": "ixVolume (Dataset created automatically by the system)"
}
]
}
},
{
"variable": "ix_volume_config",
"label": "ixVolume Configuration",
"description": "The configuration for the ixVolume dataset.",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"ix_volume"
]
],
"$ref": [
"normalize/ix_volume"
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "dataset_name",
"label": "Dataset Name",
"description": "The name of the dataset to use for storage.",
"schema": {
"type": "string",
"required": true,
"hidden": true,
"default": "config"
}
},
{
"variable": "acl_entries",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": []
}
}
]
}
},
{
"variable": "host_path_config",
"label": "Host Path Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"host_path"
]
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "acl",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": [],
"$ref": [
"normalize/acl"
]
}
},
{
"variable": "path",
"label": "Host Path",
"description": "The host path to use for storage.",
"schema": {
"type": "hostpath",
"show_if": [
[
"acl_enable",
"=",
false
]
],
"required": true
}
}
]
}
}
]
}
},
{
"variable": "data",
"label": "Data Storage",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "type",
"label": "Type",
"description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
"schema": {
"type": "string",
"required": true,
"default": "ix_volume",
"enum": [
{
"value": "host_path",
"description": "Host Path (Path that already exists on the system)"
},
{
"value": "ix_volume",
"description": "ixVolume (Dataset created automatically by the system)"
}
]
}
},
{
"variable": "ix_volume_config",
"label": "ixVolume Configuration",
"description": "The configuration for the ixVolume dataset.",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"ix_volume"
]
],
"$ref": [
"normalize/ix_volume"
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "dataset_name",
"label": "Dataset Name",
"description": "The name of the dataset to use for storage.",
"schema": {
"type": "string",
"required": true,
"hidden": true,
"default": "data"
}
},
{
"variable": "acl_entries",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": []
}
}
]
}
},
{
"variable": "host_path_config",
"label": "Host Path Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"host_path"
]
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "acl",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": [],
"$ref": [
"normalize/acl"
]
}
},
{
"variable": "path",
"label": "Host Path",
"description": "The host path to use for storage.",
"schema": {
"type": "hostpath",
"show_if": [
[
"acl_enable",
"=",
false
]
],
"required": true
}
}
]
}
}
]
}
},
{
"variable": "additional_storage",
"label": "Additional Storage",
"schema": {
"type": "list",
"default": [],
"items": [
{
"variable": "storageEntry",
"label": "Storage Entry",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "type",
"label": "Type",
"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.</br>\nNFS Share: Is a NFS share that is mounted to as a volume.\n",
"schema": {
"type": "string",
"required": true,
"default": "ix_volume",
"enum": [
{
"value": "host_path",
"description": "Host Path (Path that already exists on the system)"
},
{
"value": "ix_volume",
"description": "ixVolume (Dataset created automatically by the system)"
},
{
"value": "cifs",
"description": "SMB/CIFS Share (Mounts a volume to a SMB share)"
},
{
"value": "nfs",
"description": "NFS Share (Mounts a volume to a NFS share)"
}
]
}
},
{
"variable": "read_only",
"label": "Read Only",
"description": "Mount the volume as read only.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "mount_path",
"label": "Mount Path",
"description": "The path inside the container to mount the storage.",
"schema": {
"type": "path",
"required": true
}
},
{
"variable": "host_path_config",
"label": "Host Path Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"host_path"
]
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "acl",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": [],
"$ref": [
"normalize/acl"
]
}
},
{
"variable": "path",
"label": "Host Path",
"description": "The host path to use for storage.",
"schema": {
"type": "hostpath",
"show_if": [
[
"acl_enable",
"=",
false
]
],
"required": true
}
}
]
}
},
{
"variable": "ix_volume_config",
"label": "ixVolume Configuration",
"description": "The configuration for the ixVolume dataset.",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"ix_volume"
]
],
"$ref": [
"normalize/ix_volume"
],
"attrs": [
{
"variable": "acl_enable",
"label": "Enable ACL",
"description": "Enable ACL for the storage.",
"schema": {
"type": "boolean",
"default": false
}
},
{
"variable": "dataset_name",
"label": "Dataset Name",
"description": "The name of the dataset to use for storage.",
"schema": {
"type": "string",
"required": true,
"default": "storage_entry"
}
},
{
"variable": "acl_entries",
"label": "ACL Configuration",
"schema": {
"type": "dict",
"show_if": [
[
"acl_enable",
"=",
true
]
],
"attrs": [],
"$ref": [
"normalize/acl"
]
}
}
]
}
},
{
"variable": "cifs_config",
"label": "SMB Configuration",
"description": "The configuration for the SMB dataset.",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"cifs"
]
],
"attrs": [
{
"variable": "server",
"label": "Server",
"description": "The server to mount the SMB share.",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "path",
"label": "Path",
"description": "The path to mount the SMB share.",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "username",
"label": "Username",
"description": "The username to use for the SMB share.",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "password",
"label": "Password",
"description": "The password to use for the SMB share.",
"schema": {
"type": "string",
"required": true,
"private": true
}
},
{
"variable": "domain",
"label": "Domain",
"description": "The domain to use for the SMB share.",
"schema": {
"type": "string"
}
}
]
}
},
{
"variable": "nfs_config",
"label": "NFS Configuration",
"description": "The configuration for the NFS dataset.",
"schema": {
"type": "dict",
"show_if": [
[
"type",
"=",
"nfs"
]
],
"attrs": [
{
"variable": "server",
"label": "Server",
"description": "The server to mount the NFS share.",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "path",
"label": "Path",
"description": "The path to mount the NFS share.",
"schema": {
"type": "string",
"required": true
}
}
]
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "labels",
"label": "",
"group": "Labels Configuration",
"schema": {
"type": "list",
"default": [],
"items": [
{
"variable": "label",
"label": "Label",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "key",
"label": "Key",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "value",
"label": "Value",
"schema": {
"type": "string",
"required": true
}
},
{
"variable": "containers",
"label": "Containers",
"description": "Containers where the label should be applied",
"schema": {
"type": "list",
"items": [
{
"variable": "container",
"label": "Container",
"schema": {
"type": "string",
"required": true,
"enum": [
{
"value": "opencloud",
"description": "opencloud"
},
{
"value": "tika",
"description": "tika"
}
]
}
}
]
}
}
]
}
}
]
}
},
{
"variable": "resources",
"label": "",
"group": "Resources Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "limits",
"label": "Limits",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "cpus",
"label": "CPUs",
"description": "CPUs limit for OpenCloud.",
"schema": {
"type": "int",
"default": 2,
"required": true
}
},
{
"variable": "memory",
"label": "Memory (in MB)",
"description": "Memory limit for OpenCloud.",
"schema": {
"type": "int",
"default": 4096,
"required": true
}
}
]
}
}
]
}
}
]
},
"readme": "<h1>OpenCloud</h1> <p><a href=\"https://opencloud.eu\">OpenCloud</a> is an excellent file management and collaboration for public authorities, providers and business - or anyone who values ease of use and digital sovereignty.</p>",
"changelog": null,
"chart_metadata": {
"app_version": "3.7.0",
"capabilities": [],
"categories": [
"storage"
],
"changelog_url": "https://github.com/opencloud-eu/opencloud/releases",
"date_added": "2025-09-12",
"description": "Excellent file management and collaboration for public authorities, providers and business - or anyone who values ease of use and digital sovereignty.",
"home": "https://opencloud.eu",
"host_mounts": [],
"icon": "https://media.sys.truenas.net/apps/opencloud/icons/icon.svg",
"keywords": [
"file sharing",
"collaboration"
],
"lib_version": "2.1.65",
"lib_version_hash": "f92a9ee78c78fc77f86e7d8b545bd4c605c31c599e2c5da59f1615aa516cb8b5",
"maintainers": [
{
"email": "dev@truenas.com",
"name": "truenas",
"url": "https://www.truenas.com/"
}
],
"name": "opencloud",
"run_as_context": [
{
"description": "OpenCloud runs as any non-root user.",
"gid": 568,
"group_name": "opencloud",
"uid": 568,
"user_name": "opencloud"
},
{
"description": "Tika runs as a non-root user.",
"gid": 568,
"group_name": "tika",
"uid": 568,
"user_name": "tika"
}
],
"screenshots": [],
"sources": [
"https://docs.opencloud.eu/",
"https://github.com/OpenCloud/OpenCloud",
"https://hub.docker.com/r/opencloudeu/opencloud-rolling"
],
"title": "OpenCloud",
"train": "community",
"version": "1.0.23"
}
}
}Support, maintenance, and documentation for applications within the Community catalog is handled by the TrueNAS community. The TrueNAS Applications Market hosts but does not validate or maintain any linked resources associated with this app.
There currently aren’t any resources available for this application!
Please help the TrueNAS community add resources here or discuss this application in the TrueNAS Community forum.


