Collabora


Get Started with Apps!
Keywords: office, documents, productivity
Train: Stable
Home Page: https://www.collaboraoffice.com/
Added: 2024-08-02
Last Updated: 2025-04-23
Collabora is a collaborative online office suite based on LibreOffice technology
Run as Context- Collabora runs as non-root user.
Group: 101 / cool
User: 100 / cool - Nginx runs as root user.
Group: 0 / root
User: 0 / root

Security Capabilities
- Collabora and Nginx are able to chown files.
- Collabora is able to bypass permission checks for it's sub-processes.
- Collabora is able to bypass permission checks for it's sub-processes.
- NGINX is able to bypass permission checks.
- NGINX is able to bypass permission checks.
- Collabora is able to use chroot.
- Collabora is able to create device nodes.
- Collabora is able to set file capabilities.
App Metadata (Raw File)
{
"1.2.23": {
"healthy": true,
"supported": true,
"healthy_error": null,
"location": "/__w/apps/apps/trains/stable/collabora/1.2.23",
"last_update": "2025-04-23 17:40:39",
"required_features": [],
"human_version": "24.04.13.3.1_1.2.23",
"version": "1.2.23",
"app_metadata": {
"app_version": "24.04.13.3.1",
"capabilities": [
{
"description": "Collabora and Nginx are able to chown files.",
"name": "CHOWN"
},
{
"description": "Collabora is able to bypass permission checks for it's sub-processes.",
"name": "FOWNER"
},
{
"description": "Collabora is able to bypass permission checks for it's sub-processes.",
"name": "DAC_OVERRIDE"
},
{
"description": "NGINX is able to bypass permission checks.",
"name": "SETGID"
},
{
"description": "NGINX is able to bypass permission checks.",
"name": "SETUID"
},
{
"description": "Collabora is able to use chroot.",
"name": "SYS_CHROOT"
},
{
"description": "Collabora is able to create device nodes.",
"name": "MKNOD"
},
{
"description": "Collabora is able to set file capabilities.",
"name": "SETFCAP"
}
],
"categories": [
"productivity"
],
"changelog_url": "https://www.collaboraonline.com/collabora-online-24-04-release-notes/",
"date_added": "2024-08-02",
"description": "Collabora is a collaborative online office suite based on LibreOffice technology",
"home": "https://www.collaboraoffice.com/",
"host_mounts": [],
"icon": "https://media.sys.truenas.net/apps/collabora/icons/icon.png",
"keywords": [
"office",
"documents",
"productivity"
],
"lib_version": "2.1.16",
"lib_version_hash": "dac15686f882b9ce65b8549a3d5c0ed7bafe2df7a9028880d1a99b0ff4af1eff",
"maintainers": [
{
"email": "dev@ixsystems.com",
"name": "truenas",
"url": "https://www.truenas.com/"
}
],
"name": "collabora",
"run_as_context": [
{
"description": "Collabora runs as non-root user.",
"gid": 101,
"group_name": "cool",
"uid": 100,
"user_name": "cool"
},
{
"description": "Nginx runs as root user.",
"gid": 0,
"group_name": "root",
"uid": 0,
"user_name": "root"
}
],
"screenshots": [
"https://media.sys.truenas.net/apps/collabora/screenshots/screenshot1.png"
],
"sources": [
"https://www.collaboraoffice.com/",
"https://github.com/CollaboraOnline/online",
"https://hub.docker.com/r/collabora/code"
],
"title": "Collabora",
"train": "stable",
"version": "1.2.23"
},
"schema": {
"groups": [
{
"name": "Collabora Configuration",
"description": "Configure Collabora"
},
{
"name": "Network Configuration",
"description": "Configure Network for Collabora"
},
{
"name": "Storage Configuration",
"description": "Configure Storage for Collabora"
},
{
"name": "Labels Configuration",
"description": "Configure Labels for Collabora"
},
{
"name": "Resources Configuration",
"description": "Configure Resources for Collabora"
}
],
"questions": [
{
"variable": "TZ",
"group": "Collabora Configuration",
"label": "Timezone",
"schema": {
"type": "string",
"default": "Etc/UTC",
"required": true,
"$ref": [
"definitions/timezone"
]
}
},
{
"variable": "collabora",
"label": "",
"group": "Collabora Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "server_name",
"label": "Server Name",
"description": "The server name for Collabora.",
"schema": {
"type": "string",
"default": "",
"$ref": [
"definitions/nodeIP"
]
}
},
{
"variable": "enable_webui",
"label": "Enable WebUI",
"description": "Enable WebUI for Collabora.",
"schema": {
"type": "boolean",
"default": true
}
},
{
"variable": "username",
"label": "Username",
"description": "The username for Collabora.",
"schema": {
"type": "string",
"show_if": [
[
"enable_webui",
"=",
true
]
],
"required": true
}
},
{
"variable": "password",
"label": "Password",
"description": "The password for Collabora.",
"schema": {
"type": "string",
"show_if": [
[
"enable_webui",
"=",
true
]
],
"valid_chars": "^[a-zA-Z0-9!@#$%^&*?]{8,}$|^$",
"valid_chars_error": "Password must be at least 8 characters long and contain at least one of the following:</br>\n- Uppercase letter</br>\n- Lowercase letter</br>\n- Number</br>\n- Special character (!@#$%^&*?)</br>\n- **Only** the above characters are allowed\n",
"required": true,
"private": true
}
},
{
"variable": "aliasgroup1",
"label": "Alias Group 1",
"description": "List of domains that will be allowed to access the Collabora server\nType one domain per line\n",
"schema": {
"type": "list",
"default": [],
"items": [
{
"variable": "alias",
"label": "Alias",
"schema": {
"type": "string"
}
}
]
}
},
{
"variable": "dictionaries",
"label": "Dictionaries",
"description": "Dictionaries to be used by Collabora.",
"schema": {
"type": "list",
"default": [
"de_DE",
"en_GB",
"en_US",
"es_ES",
"fr_FR",
"it",
"nl",
"pt_BR",
"pt_PT",
"ru"
],
"items": [
{
"variable": "dictionary",
"label": "Dictionary",
"schema": {
"type": "string",
"default": "",
"required": true
}
}
]
}
},
{
"variable": "extra_params",
"label": "Extra Parameters",
"description": "Extra parameters to be passed to Collabora.",
"schema": {
"type": "list",
"default": [
"--o:welcome.enable=false",
"--o:user_interface.mode=notebookbar",
"--o:ssl.termination=true",
"--o:ssl.enable=false",
"--o:net.proto=IPv4",
"--o:logging.level=warning",
"--o:logging.level_startup=warning",
"--o:mount_jail_tree=false"
],
"items": [
{
"variable": "extraParam",
"label": "Extra Parameter",
"schema": {
"type": "string",
"default": "",
"required": true
}
}
]
}
},
{
"variable": "additional_envs",
"label": "Additional Environment Variables",
"description": "Configure additional environment variables for Collabora.",
"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": "network",
"label": "",
"group": "Network Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "web_port",
"label": "WebUI Port",
"description": "The port for Collabora WebUI",
"schema": {
"type": "int",
"default": 9980,
"required": true,
"$ref": [
"definitions/port"
]
}
},
{
"variable": "certificate_id",
"label": "Certificate ID",
"description": "The certificate ID to use for Elastic Search.",
"schema": {
"type": "int",
"null": true,
"$ref": [
"definitions/certificate"
]
}
}
]
}
},
{
"variable": "storage",
"label": "",
"group": "Storage Configuration",
"schema": {
"type": "dict",
"attrs": [
{
"variable": "additional_storage",
"label": "Additional Storage",
"description": "Additional storage for Collabora.",
"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.\n",
"schema": {
"type": "string",
"required": true,
"default": "ix_volume",
"immutable": true,
"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)"
}
]
}
},
{
"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,
"immutable": 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": "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": "collabora",
"description": "collabora"
}
]
}
}
]
}
}
]
}
}
]
}
},
{
"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 Collabora.",
"schema": {
"type": "int",
"default": 2,
"required": true
}
},
{
"variable": "memory",
"label": "Memory (in MB)",
"description": "Memory limit for Collabora.",
"schema": {
"type": "int",
"default": 4096,
"required": true
}
}
]
}
}
]
}
}
]
},
"readme": "<h1>Collabora</h1> <p><a href=\"https://www.collaboraoffice.com/\">Collabora</a> is a collaborative online office suite based on LibreOffice technology</p>",
"changelog": null,
"chart_metadata": {
"app_version": "24.04.13.3.1",
"capabilities": [
{
"description": "Collabora and Nginx are able to chown files.",
"name": "CHOWN"
},
{
"description": "Collabora is able to bypass permission checks for it's sub-processes.",
"name": "FOWNER"
},
{
"description": "Collabora is able to bypass permission checks for it's sub-processes.",
"name": "DAC_OVERRIDE"
},
{
"description": "NGINX is able to bypass permission checks.",
"name": "SETGID"
},
{
"description": "NGINX is able to bypass permission checks.",
"name": "SETUID"
},
{
"description": "Collabora is able to use chroot.",
"name": "SYS_CHROOT"
},
{
"description": "Collabora is able to create device nodes.",
"name": "MKNOD"
},
{
"description": "Collabora is able to set file capabilities.",
"name": "SETFCAP"
}
],
"categories": [
"productivity"
],
"changelog_url": "https://www.collaboraonline.com/collabora-online-24-04-release-notes/",
"date_added": "2024-08-02",
"description": "Collabora is a collaborative online office suite based on LibreOffice technology",
"home": "https://www.collaboraoffice.com/",
"host_mounts": [],
"icon": "https://media.sys.truenas.net/apps/collabora/icons/icon.png",
"keywords": [
"office",
"documents",
"productivity"
],
"lib_version": "2.1.16",
"lib_version_hash": "dac15686f882b9ce65b8549a3d5c0ed7bafe2df7a9028880d1a99b0ff4af1eff",
"maintainers": [
{
"email": "dev@ixsystems.com",
"name": "truenas",
"url": "https://www.truenas.com/"
}
],
"name": "collabora",
"run_as_context": [
{
"description": "Collabora runs as non-root user.",
"gid": 101,
"group_name": "cool",
"uid": 100,
"user_name": "cool"
},
{
"description": "Nginx runs as root user.",
"gid": 0,
"group_name": "root",
"uid": 0,
"user_name": "root"
}
],
"screenshots": [
"https://media.sys.truenas.net/apps/collabora/screenshots/screenshot1.png"
],
"sources": [
"https://www.collaboraoffice.com/",
"https://github.com/CollaboraOnline/online",
"https://hub.docker.com/r/collabora/code"
],
"title": "Collabora",
"train": "stable",
"version": "1.2.23"
}
}
}
Support and documentation for applications within the Stable catalog is handled by the TrueNAS community. The TrueNAS Applications Portal hosts but does not validate or maintain any linked resources associated with this app.