TrueNAS Apps Market

Expand your system’s capabilities quickly and easily by adding third-party software.

Download TrueNAS
TrueNAS UI and Apps screens

Briefkasten

Briefkasten
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: latest
Keywords: bookmark
Train: Community
Home Page: https://github.com/ndom91/briefkasten
Briefkasten Details
Added: 2024-08-02
Last Updated: 2025-09-02

Briefkasten is a self hosted bookmarking app

Run as Context
  • Briefkasten runs as non-root user.
    Group: 1001 / briefkasten
    User: 1001 / briefkasten
  • Postgres runs as non-root user.
    Group: 999 / postgres
    User: 999 / postgres

Screenshots
Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4

App Metadata (Raw File)
{
    "1.3.10": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/briefkasten/1.3.10",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "latest_1.3.10",
        "version": "1.3.10",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "latest",
            "capabilities": [],
            "categories": [
                "productivity"
            ],
            "date_added": "2024-08-02",
            "description": "Briefkasten is a self hosted bookmarking app",
            "home": "https://github.com/ndom91/briefkasten",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/briefkasten/icons/icon.svg",
            "keywords": [
                "bookmark"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "briefkasten",
            "run_as_context": [
                {
                    "description": "Briefkasten runs as non-root user.",
                    "gid": 1001,
                    "group_name": "briefkasten",
                    "uid": 1001,
                    "user_name": "briefkasten"
                },
                {
                    "description": "Postgres runs as non-root user.",
                    "gid": 999,
                    "group_name": "postgres",
                    "uid": 999,
                    "user_name": "postgres"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot1.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot2.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot3.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot4.png"
            ],
            "sources": [
                "https://github.com/ndom91/briefkasten",
                "https://docs.briefkastenhq.com/"
            ],
            "title": "Briefkasten",
            "train": "community",
            "version": "1.3.10"
        },
        "schema": {
            "groups": [
                {
                    "name": "Briefkasten Configuration",
                    "description": "Configure Briefkasten"
                },
                {
                    "name": "User and Group Configuration",
                    "description": "Configure User and Group for Briefkasten"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Briefkasten"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Briefkasten"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Briefkasten"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Briefkasten"
                }
            ],
            "questions": [
                {
                    "variable": "TZ",
                    "group": "Briefkasten Configuration",
                    "label": "Timezone",
                    "schema": {
                        "type": "string",
                        "default": "Etc/UTC",
                        "required": true,
                        "$ref": [
                            "definitions/timezone"
                        ]
                    }
                },
                {
                    "variable": "briefkasten",
                    "label": "",
                    "group": "Briefkasten Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "postgres_image_selector",
                                "label": "Postgres Image (CAUTION)",
                                "description": "If you are changing this after the postgres directory has been initialized,</br>\nSTOP! and make sure you have a backup of your data.</br>\nChanging this will trigger an one way database upgrade.</br>\nYou can only select newer versions of postgres.</br>\nSelecting an older version will refuse to start.</br>\nIf something goes wrong, you will have to restore from backup.\n",
                                "schema": {
                                    "type": "string",
                                    "default": "postgres_17_image",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "postgres_15_image",
                                            "description": "Postgres 15"
                                        },
                                        {
                                            "value": "postgres_17_image",
                                            "description": "Postgres 17"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "nextauth_secret",
                                "label": "NextAuth Secret",
                                "description": "The secret used to encrypt the JWT token.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "postgres_password",
                                "label": "Postgres Password",
                                "description": "The password for Postgres.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "nextauth_url",
                                "label": "NextAuth URL",
                                "description": "The URL that Briefkasten will be accessible from.</br>\nExample: </br>\nhttp://server.ip:30080</br>\nhttps://Briefkasten.example.com\n",
                                "schema": {
                                    "type": "uri",
                                    "default": "",
                                    "required": true
                                }
                            },
                            {
                                "variable": "smtp",
                                "label": "SMTP Auth Provider",
                                "description": "Configure SMTP for Briefkasten.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "enabled",
                                            "label": "Enabled",
                                            "description": "Enable SMTP for auth.",
                                            "schema": {
                                                "type": "boolean",
                                                "default": false
                                            }
                                        },
                                        {
                                            "variable": "server",
                                            "label": "SMTP Server",
                                            "description": "The SMTP server to use.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "from",
                                            "label": "SMTP From",
                                            "description": "The SMTP from address to use.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "github",
                                "label": "GitHub Auth Provider",
                                "description": "Configure GitHub for Briefkasten.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "enabled",
                                            "label": "Enabled",
                                            "description": "Enable GitHub for auth.",
                                            "schema": {
                                                "type": "boolean",
                                                "default": false
                                            }
                                        },
                                        {
                                            "variable": "id",
                                            "label": "GitHub Client ID",
                                            "description": "The GitHub Client ID.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "secret",
                                            "label": "GitHub Client Secret",
                                            "description": "The GitHub Client Secret.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "private": true,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "google",
                                "label": "Google Auth Provider",
                                "description": "Configure Google for Briefkasten.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "enabled",
                                            "label": "Enabled",
                                            "description": "Enable Google for auth.",
                                            "schema": {
                                                "type": "boolean",
                                                "default": false
                                            }
                                        },
                                        {
                                            "variable": "id",
                                            "label": "Google Client ID",
                                            "description": "The Google Client ID.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "secret",
                                            "label": "Google Client Secret",
                                            "description": "The Google Client Secret.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "private": true,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "keycloak",
                                "label": "Keycloak Auth Provider",
                                "description": "Configure Keycloak for Briefkasten.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "enabled",
                                            "label": "Enabled",
                                            "description": "Enable Keycloak for auth.",
                                            "schema": {
                                                "type": "boolean",
                                                "default": false
                                            }
                                        },
                                        {
                                            "variable": "name",
                                            "label": "Keycloak Name",
                                            "description": "The Keycloak Name.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "id",
                                            "label": "Keycloak Client ID",
                                            "description": "The Keycloak Client ID.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "secret",
                                            "label": "Keycloak Client Secret",
                                            "description": "The Keycloak Client Secret.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "private": true,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "issuer",
                                            "label": "Keycloak Issuer",
                                            "description": "The Keycloak Issuer.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "authentik",
                                "label": "Authentik Auth Provider",
                                "description": "Configure Authentik for Briefkasten.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "enabled",
                                            "label": "Enabled",
                                            "description": "Enable Authentik for auth.",
                                            "schema": {
                                                "type": "boolean",
                                                "default": false
                                            }
                                        },
                                        {
                                            "variable": "name",
                                            "label": "Authentik Name",
                                            "description": "The Authentik Name.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "id",
                                            "label": "Authentik Client ID",
                                            "description": "The Authentik Client ID.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "secret",
                                            "label": "Authentik Client Secret",
                                            "description": "The Authentik Client Secret.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "private": true,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "issuer",
                                            "label": "Authentik Issuer",
                                            "description": "The Authentik Issuer.",
                                            "schema": {
                                                "type": "string",
                                                "show_if": [
                                                    [
                                                        "enabled",
                                                        "=",
                                                        true
                                                    ]
                                                ],
                                                "default": "",
                                                "required": 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": "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": 30080,
                                                "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": "postgres_data",
                                "label": "Postgres Data Storage",
                                "description": "The path to store Postgres Data.",
                                "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": "pg_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": "auto_permissions",
                                                        "label": "Automatic Permissions",
                                                        "description": "Automatically set permissions for the host path.\nEnabling this, will check the top level directory,</br>\nIf it finds incorrect permissions, it will `chown` the\nhost path to the user and group required for the\npostgres container.\n",
                                                        "schema": {
                                                            "type": "boolean",
                                                            "default": false,
                                                            "show_if": [
                                                                [
                                                                    "acl_enable",
                                                                    "=",
                                                                    false
                                                                ]
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "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": "briefkasten",
                                                                    "description": "briefkasten"
                                                                },
                                                                {
                                                                    "value": "postgres",
                                                                    "description": "postgres"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Briefkasten.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Briefkasten.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Briefkasten</h1> <p><a href=\"https://github.com/ndom91/briefkasten\">Briefkasten</a> is a self hosted bookmarking app</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "latest",
            "capabilities": [],
            "categories": [
                "productivity"
            ],
            "date_added": "2024-08-02",
            "description": "Briefkasten is a self hosted bookmarking app",
            "home": "https://github.com/ndom91/briefkasten",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/briefkasten/icons/icon.svg",
            "keywords": [
                "bookmark"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "briefkasten",
            "run_as_context": [
                {
                    "description": "Briefkasten runs as non-root user.",
                    "gid": 1001,
                    "group_name": "briefkasten",
                    "uid": 1001,
                    "user_name": "briefkasten"
                },
                {
                    "description": "Postgres runs as non-root user.",
                    "gid": 999,
                    "group_name": "postgres",
                    "uid": 999,
                    "user_name": "postgres"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot1.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot2.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot3.png",
                "https://media.sys.truenas.net/apps/briefkasten/screenshots/screenshot4.png"
            ],
            "sources": [
                "https://github.com/ndom91/briefkasten",
                "https://docs.briefkastenhq.com/"
            ],
            "title": "Briefkasten",
            "train": "community",
            "version": "1.3.10"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Calibre

Calibre
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 8.9.0 (Changelog)
Keywords: media, ebooks
Train: Community
Home Page: https://calibre-ebook.com/
Calibre Details
Added: 2024-11-19
Last Updated: 2025-09-02

Calibre is the one stop solution for all your e-book needs.

Run as Context
  • Calibre runs as root user.
    Group: 0 / root
    User: 0 / root

Screenshots
Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 6

Security Capabilities
  • Calibre is able to change file ownership arbitrarily
  • Calibre is able to bypass file permission checks
  • Calibre is able to bypass permission checks for file operations
  • Calibre is able to change group ID of processes
  • Calibre is able to change user ID of processes

App Metadata (Raw File)
{
    "1.1.11": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/calibre/1.1.11",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "8.9.0_1.1.11",
        "version": "1.1.11",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "8.9.0",
            "capabilities": [
                {
                    "description": "Calibre is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Calibre is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Calibre is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Calibre is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Calibre is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://calibre-ebook.com/whats-new",
            "date_added": "2024-11-19",
            "description": "Calibre is the one stop solution for all your e-book needs.",
            "home": "https://calibre-ebook.com/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/calibre/icons/icon.png",
            "keywords": [
                "media",
                "ebooks"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "calibre",
            "run_as_context": [
                {
                    "description": "Calibre runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot1.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot2.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot3.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot4.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot5.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot6.png"
            ],
            "sources": [
                "https://github.com/linuxserver/docker-calibre",
                "https://github.com/kovidgoyal/calibre",
                "https://calibre-ebook.com/"
            ],
            "title": "Calibre",
            "train": "community",
            "version": "1.1.11"
        },
        "schema": {
            "groups": [
                {
                    "name": "Calibre Configuration",
                    "description": "Configure Calibre"
                },
                {
                    "name": "User and Group Configuration",
                    "description": "Configure User and Group for Calibre"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Calibre"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Calibre"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Calibre"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Calibre"
                }
            ],
            "questions": [
                {
                    "variable": "TZ",
                    "group": "Calibre Configuration",
                    "label": "Timezone",
                    "schema": {
                        "type": "string",
                        "default": "Etc/UTC",
                        "required": true,
                        "$ref": [
                            "definitions/timezone"
                        ]
                    }
                },
                {
                    "variable": "calibre",
                    "label": "",
                    "group": "Calibre Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "username",
                                "label": "Username",
                                "description": "The username for Calibre.",
                                "schema": {
                                    "type": "string",
                                    "default": ""
                                }
                            },
                            {
                                "variable": "password",
                                "label": "Password",
                                "description": "The password for Calibre.",
                                "schema": {
                                    "type": "string",
                                    "show_if": [
                                        [
                                            "username",
                                            "!=",
                                            ""
                                        ]
                                    ],
                                    "private": true,
                                    "required": true,
                                    "default": ""
                                }
                            },
                            {
                                "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 Calibre files will be owned by.",
                                "schema": {
                                    "type": "int",
                                    "min": 568,
                                    "default": 568,
                                    "required": true
                                }
                            },
                            {
                                "variable": "group",
                                "label": "Group ID",
                                "description": "The group id that Calibre 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",
                                "description": "The port for Calibre Content Server WebUI",
                                "schema": {
                                    "type": "dict",
                                    "show_if": [
                                        [
                                            "host_network",
                                            "=",
                                            false
                                        ]
                                    ],
                                    "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 32014,
                                                "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": "http_port",
                                "label": "HTTP Port",
                                "description": "The port for Calibre HTTP (Desktop GUI)",
                                "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": 32015,
                                                "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": "https_port",
                                "label": "HTTPS Port",
                                "description": "The port for Calibre HTTPS (Desktop GUI)",
                                "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": 32016,
                                                "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": "host_network",
                                "label": "Host Network",
                                "description": "Bind to the host network. It's recommended to keep this disabled.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "storage",
                    "label": "",
                    "group": "Storage Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "config",
                                "label": "Calibre Config Storage",
                                "description": "The path to store Calibre Config/User Database.",
                                "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": "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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "calibre",
                                                                    "description": "calibre"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Calibre.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Calibre.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Calibre</h1> <p><a href=\"https://calibre-ebook.com/\">Calibre</a> is the one stop solution for all your e-book needs.</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "8.9.0",
            "capabilities": [
                {
                    "description": "Calibre is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Calibre is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Calibre is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Calibre is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Calibre is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://calibre-ebook.com/whats-new",
            "date_added": "2024-11-19",
            "description": "Calibre is the one stop solution for all your e-book needs.",
            "home": "https://calibre-ebook.com/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/calibre/icons/icon.png",
            "keywords": [
                "media",
                "ebooks"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "calibre",
            "run_as_context": [
                {
                    "description": "Calibre runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot1.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot2.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot3.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot4.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot5.png",
                "https://media.sys.truenas.net/apps/calibre/screenshots/screenshot6.png"
            ],
            "sources": [
                "https://github.com/linuxserver/docker-calibre",
                "https://github.com/kovidgoyal/calibre",
                "https://calibre-ebook.com/"
            ],
            "title": "Calibre",
            "train": "community",
            "version": "1.1.11"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Calibre Web

Calibre Web
Get Started with Apps!
App Version: 0.6.25 (Changelog)
Keywords: media, ebooks
Train: Community
Home Page: https://github.com/janeczku/calibre-web
Calibre Web Details
Added: 2024-11-13
Last Updated: 2025-09-02

Calibre Web is a web app for browsing, reading and downloading eBooks stored in a Calibre database

Run as Context
  • Calibre Web runs as root user.
    Group: 0 / root
    User: 0 / root

Screenshots
Screenshot 1

Security Capabilities
  • Calibre Web is able to change file ownership arbitrarily
  • Calibre Web is able to bypass file permission checks
  • Calibre Web is able to bypass permission checks for file operations
  • Calibre Web is able to change group ID of processes
  • Calibre Web is able to change user ID of processes

App Metadata (Raw File)
{
    "2.0.16": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/calibre-web/2.0.16",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "0.6.25_2.0.16",
        "version": "2.0.16",
        "app_metadata": {
            "app_version": "0.6.25",
            "capabilities": [
                {
                    "description": "Calibre Web is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Calibre Web is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Calibre Web is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Calibre Web is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Calibre Web is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://github.com/janeczku/calibre-web/releases",
            "date_added": "2024-11-13",
            "description": "Calibre Web is a web app for browsing, reading and downloading eBooks stored in a Calibre database",
            "home": "https://github.com/janeczku/calibre-web",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/calibre-web/icons/icon.svg",
            "keywords": [
                "media",
                "ebooks"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "calibre-web",
            "run_as_context": [
                {
                    "description": "Calibre Web runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/calibre-web/screenshots/screenshot1.png"
            ],
            "sources": [
                "https://github.com/linuxserver/docker-calibre-web",
                "https://github.com/janeczku/calibre-web"
            ],
            "title": "Calibre Web",
            "train": "community",
            "version": "2.0.16"
        },
        "schema": {
            "groups": [
                {
                    "name": "Calibre Web Configuration",
                    "description": "Configure Calibre Web"
                },
                {
                    "name": "User and Group Configuration",
                    "description": "Configure User and Group for Calibre Web"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Calibre Web"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Calibre Web"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Calibre Web"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Calibre Web"
                }
            ],
            "questions": [
                {
                    "variable": "TZ",
                    "group": "Calibre Web Configuration",
                    "label": "Timezone",
                    "schema": {
                        "type": "string",
                        "default": "Etc/UTC",
                        "required": true,
                        "$ref": [
                            "definitions/timezone"
                        ]
                    }
                },
                {
                    "variable": "calibre_web",
                    "label": "",
                    "group": "Calibre Web Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "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 Calibre Web files will be owned by.",
                                "schema": {
                                    "type": "int",
                                    "min": 568,
                                    "default": 568,
                                    "required": true
                                }
                            },
                            {
                                "variable": "group",
                                "label": "Group ID",
                                "description": "The group id that Calibre Web 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",
                                    "show_if": [
                                        [
                                            "host_network",
                                            "=",
                                            false
                                        ]
                                    ],
                                    "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 31067,
                                                "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": "host_network",
                                "label": "Host Network",
                                "description": "Bind to the host network. It's recommended to keep this disabled.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "storage",
                    "label": "",
                    "group": "Storage Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "config",
                                "label": "Calibre Web Config Storage",
                                "description": "The path to store Calibre Web Config.",
                                "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": "books",
                                "label": "Calibre Web Books Storage",
                                "description": "The path to store Calibre Web Books.",
                                "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": "books"
                                                        }
                                                    },
                                                    {
                                                        "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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "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": "calibre-web",
                                                                    "description": "calibre-web"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Calibre Web.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Calibre Web.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Calibre Web</h1> <p><a href=\"https://github.com/janeczku/calibre-web\">Calibre Web</a> is a web app for browsing, reading and downloading eBooks stored in a Calibre database</p>",
        "changelog": null,
        "chart_metadata": {
            "app_version": "0.6.25",
            "capabilities": [
                {
                    "description": "Calibre Web is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Calibre Web is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Calibre Web is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Calibre Web is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Calibre Web is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://github.com/janeczku/calibre-web/releases",
            "date_added": "2024-11-13",
            "description": "Calibre Web is a web app for browsing, reading and downloading eBooks stored in a Calibre database",
            "home": "https://github.com/janeczku/calibre-web",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/calibre-web/icons/icon.svg",
            "keywords": [
                "media",
                "ebooks"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "calibre-web",
            "run_as_context": [
                {
                    "description": "Calibre Web runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/calibre-web/screenshots/screenshot1.png"
            ],
            "sources": [
                "https://github.com/linuxserver/docker-calibre-web",
                "https://github.com/janeczku/calibre-web"
            ],
            "title": "Calibre Web",
            "train": "community",
            "version": "2.0.16"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Castopod

Castopod
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 1.13.5 (Changelog)
Keywords: podcast
Train: Community
Home Page: https://castopod.org
Castopod Details
Added: 2024-09-19
Last Updated: 2025-09-02

Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.

Run as Context
  • Castopod runs as root user.
    Group: 0 / root
    User: 0 / root
  • MariaDB runs as non-root user.
    Group: 999 / mariadb
    User: 999 / mariadb
  • Redis runs as any non-root user.
    Group: 568 / redis
    User: 568 / redis

Screenshots
Screenshot 1

Security Capabilities
  • Castopod, Castopod Web are able to change file ownership arbitrarily
  • Castopod is able to bypass file permission checks
  • Castopod is able to bypass permission checks for file operations
  • Castopod, Castopod Web are able to change group ID of processes
  • Castopod, Castopod Web are able to change user ID of processes

App Metadata (Raw File)
{
    "1.2.13": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/castopod/1.2.13",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "1.13.5_1.2.13",
        "version": "1.2.13",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "1.13.5",
            "capabilities": [
                {
                    "description": "Castopod, Castopod Web are able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Castopod is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Castopod is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Castopod, Castopod Web are able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Castopod, Castopod Web are able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://code.castopod.org/adaures/castopod/-/releases",
            "date_added": "2024-09-19",
            "description": "Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.",
            "home": "https://castopod.org",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/castopod/icons/icon.svg",
            "keywords": [
                "podcast"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "castopod",
            "run_as_context": [
                {
                    "description": "Castopod runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                },
                {
                    "description": "MariaDB runs as non-root user.",
                    "gid": 999,
                    "group_name": "mariadb",
                    "uid": 999,
                    "user_name": "mariadb"
                },
                {
                    "description": "Redis runs as any non-root user.",
                    "gid": 568,
                    "group_name": "redis",
                    "uid": 568,
                    "user_name": "redis"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/castopod/screenshots/screenshot1.png"
            ],
            "sources": [
                "https://hub.docker.com/r/castopod/castopod",
                "https://code.castopod.org/adaures/castopod"
            ],
            "title": "Castopod",
            "train": "community",
            "version": "1.2.13"
        },
        "schema": {
            "groups": [
                {
                    "name": "Castopod Configuration",
                    "description": "Configure Castopod"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Castopod"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Castopod"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure labels for Castopod"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Castopod"
                }
            ],
            "questions": [
                {
                    "variable": "castopod",
                    "label": "",
                    "group": "Castopod Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "db_password",
                                "label": "Database Password",
                                "description": "The database password for Castopod.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "db_root_password",
                                "label": "Root Database Password",
                                "description": "The root database password for Castopod.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "redis_password",
                                "label": "Redis Password",
                                "description": "The redis password for Castopod.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "analytics_salt",
                                "label": "Analytics Salt",
                                "description": "The analytics salt for Castopod.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "required": true,
                                    "private": true
                                }
                            },
                            {
                                "variable": "base_url",
                                "label": "Base URL",
                                "description": "The base URL for Castopod.</br>\nExample: http://your.server.ip:30085\n",
                                "schema": {
                                    "type": "uri",
                                    "required": true,
                                    "default": ""
                                }
                            },
                            {
                                "variable": "web_timeout",
                                "label": "Web Timeout",
                                "description": "The timeout for Castopod requests in seconds.",
                                "schema": {
                                    "type": "int",
                                    "required": true,
                                    "default": 900,
                                    "min": 1
                                }
                            },
                            {
                                "variable": "web_max_body_size",
                                "label": "Web Max Body Size",
                                "description": "The maximum body size for Castopod requests in megabytes.",
                                "schema": {
                                    "type": "int",
                                    "required": true,
                                    "default": 512,
                                    "min": 1
                                }
                            },
                            {
                                "variable": "php_memory_limit",
                                "label": "PHP Memory Limit",
                                "description": "The PHP memory limit for Castopod.",
                                "schema": {
                                    "type": "int",
                                    "required": true,
                                    "default": 512,
                                    "min": 1
                                }
                            },
                            {
                                "variable": "enable_2fa",
                                "label": "Enable 2FA",
                                "description": "Enable 2FA for Castopod.",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "disable_https_redirect",
                                "label": "Disable HTTPS Redirect",
                                "description": "Disable HTTPS redirect for Castopod. </br>\nThis is useful if you are using a reverse proxy with HTTPS.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": 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": "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 30085,
                                                "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": "data",
                                "label": "Castopod Data Storage",
                                "description": "The path to store Castopod Data.",
                                "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": "mariadb_data",
                                "label": "Castopod MariaDB Data Storage",
                                "description": "The path to store Castopod MariaDB Data.",
                                "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": "mariadb_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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "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": "castopod",
                                                                    "description": "castopod"
                                                                },
                                                                {
                                                                    "value": "castopod-web",
                                                                    "description": "castopod-web"
                                                                },
                                                                {
                                                                    "value": "mariadb",
                                                                    "description": "mariadb"
                                                                },
                                                                {
                                                                    "value": "redis",
                                                                    "description": "redis"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Castopod.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Castopod.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Castopod</h1> <p><a href=\"https://castopod.org\">Castopod</a> is an open-source hosting platform made for podcasters who want engage and interact with their audience.</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "1.13.5",
            "capabilities": [
                {
                    "description": "Castopod, Castopod Web are able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Castopod is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Castopod is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Castopod, Castopod Web are able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Castopod, Castopod Web are able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "media"
            ],
            "changelog_url": "https://code.castopod.org/adaures/castopod/-/releases",
            "date_added": "2024-09-19",
            "description": "Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.",
            "home": "https://castopod.org",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/castopod/icons/icon.svg",
            "keywords": [
                "podcast"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "castopod",
            "run_as_context": [
                {
                    "description": "Castopod runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                },
                {
                    "description": "MariaDB runs as non-root user.",
                    "gid": 999,
                    "group_name": "mariadb",
                    "uid": 999,
                    "user_name": "mariadb"
                },
                {
                    "description": "Redis runs as any non-root user.",
                    "gid": 568,
                    "group_name": "redis",
                    "uid": 568,
                    "user_name": "redis"
                }
            ],
            "screenshots": [
                "https://media.sys.truenas.net/apps/castopod/screenshots/screenshot1.png"
            ],
            "sources": [
                "https://hub.docker.com/r/castopod/castopod",
                "https://code.castopod.org/adaures/castopod"
            ],
            "title": "Castopod",
            "train": "community",
            "version": "1.2.13"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Chia

Chia
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 2.5.5 (Changelog)
Keywords: blockchain, hard-drive, chia
Train: Community
Home Page: https://www.chia.net/
Chia Details
Added: 2024-08-21
Last Updated: 2025-09-02

Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure.

Run as Context
  • Chia runs as root user.
    Group: 0 / root
    User: 0 / root

App Metadata (Raw File)
{
    "1.2.6": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/chia/1.2.6",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "2.5.5_1.2.6",
        "version": "1.2.6",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "2.5.5",
            "capabilities": [],
            "categories": [
                "financial"
            ],
            "changelog_url": "https://github.com/Chia-Network/chia-blockchain/releases",
            "date_added": "2024-08-21",
            "description": "Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure.",
            "home": "https://www.chia.net/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/chia/icons/icon.svg",
            "keywords": [
                "blockchain",
                "hard-drive",
                "chia"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "chia",
            "run_as_context": [
                {
                    "description": "Chia runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://github.com/Chia-Network/chia-docker",
                "https://www.chia.net/"
            ],
            "title": "Chia",
            "train": "community",
            "version": "1.2.6"
        },
        "schema": {
            "groups": [
                {
                    "name": "Chia Configuration",
                    "description": "Configure Chia"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Chia"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Chia"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Chia"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Chia"
                }
            ],
            "questions": [
                {
                    "variable": "TZ",
                    "group": "Chia Configuration",
                    "label": "Timezone",
                    "schema": {
                        "type": "string",
                        "default": "Etc/UTC",
                        "required": true,
                        "$ref": [
                            "definitions/timezone"
                        ]
                    }
                },
                {
                    "variable": "chia",
                    "label": "",
                    "group": "Chia Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "service",
                                "label": "Service",
                                "description": "The service to run.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "enum": [
                                        {
                                            "value": "farmer-only",
                                            "description": "Farmer only"
                                        },
                                        {
                                            "value": "harverster",
                                            "description": "Harvester"
                                        },
                                        {
                                            "value": "",
                                            "description": "Full node"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "farmer_address",
                                "label": "Farmer Address",
                                "schema": {
                                    "type": "string",
                                    "show_if": [
                                        [
                                            "service",
                                            "=",
                                            "harvester"
                                        ]
                                    ],
                                    "required": true,
                                    "default": ""
                                }
                            },
                            {
                                "variable": "farmer_port",
                                "label": "Farmer Port",
                                "schema": {
                                    "type": "int",
                                    "show_if": [
                                        [
                                            "service",
                                            "=",
                                            "harvester"
                                        ]
                                    ],
                                    "default": 8447,
                                    "required": true
                                }
                            },
                            {
                                "variable": "ca",
                                "label": "CA",
                                "schema": {
                                    "type": "string",
                                    "show_if": [
                                        [
                                            "service",
                                            "=",
                                            "harvester"
                                        ]
                                    ],
                                    "required": true,
                                    "default": ""
                                }
                            },
                            {
                                "variable": "full_node_peer",
                                "label": "Full Node Peer",
                                "schema": {
                                    "type": "string",
                                    "default": ""
                                }
                            },
                            {
                                "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": "network",
                    "label": "",
                    "group": "Network Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "chia_port",
                                "label": "Chia Port",
                                "description": "The port for Chia",
                                "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 8444,
                                                "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": "farmer_port",
                                "label": "Farmer Port",
                                "description": "The port for Farmer",
                                "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 8447,
                                                "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": "data",
                                "label": "Chia Data Storage",
                                "description": "The path to store Chia Data.",
                                "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": "plots",
                                "label": "Chia Plots Storage",
                                "description": "The path to store Chia Plots.",
                                "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": "plots"
                                                        }
                                                    },
                                                    {
                                                        "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": "is_plot_dir",
                                                        "label": "Directory for Plots",
                                                        "description": "If this is checked, it will append the directory to <plots_dir> variable <br>\nKeep this unchecked if you want to mount a directory for anything else.\n",
                                                        "schema": {
                                                            "type": "boolean",
                                                            "default": false
                                                        }
                                                    },
                                                    {
                                                        "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",
                                                            "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,
                                                                        "default": "storage_entry"
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "acl_entries",
                                                                    "label": "ACL Configuration",
                                                                    "schema": {
                                                                        "type": "dict",
                                                                        "show_if": [
                                                                            [
                                                                                "acl_enable",
                                                                                "=",
                                                                                true
                                                                            ]
                                                                        ],
                                                                        "attrs": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "chia",
                                                                    "description": "chia"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Chia.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Chia.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Chia</h1> <p><a href=\"https://www.chia.net/\">Chia</a> is a modern cryptocurrency built from scratch, designed to be efficient,decentralized, and secure.</p> <p>Key file is stored in <code>/plots/keyfile</code> and is generated automatically, if the file does not exist. If you want to use your own <code>keyfile</code>, you can create a file called <code>keyfile</code> in the <code>/plots</code> directory and it will be used instead.</p> <p>When set on harvester mode keys variable is set to none and no generation is performed.</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "2.5.5",
            "capabilities": [],
            "categories": [
                "financial"
            ],
            "changelog_url": "https://github.com/Chia-Network/chia-blockchain/releases",
            "date_added": "2024-08-21",
            "description": "Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure.",
            "home": "https://www.chia.net/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/chia/icons/icon.svg",
            "keywords": [
                "blockchain",
                "hard-drive",
                "chia"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "chia",
            "run_as_context": [
                {
                    "description": "Chia runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://github.com/Chia-Network/chia-docker",
                "https://www.chia.net/"
            ],
            "title": "Chia",
            "train": "community",
            "version": "1.2.6"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Chia Deployment Notes

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.

We welcome community contributions to keep this documentation current! Click Edit Page in the top right corner to propose changes to this article.

The TrueNAS Chia app installs the Chia Blockchain architecture in a Kubernetes container. Chia Blockchain is a cryptocurrency ecosystem that uses Proof of Space and Time, and allows users to work with digital money and interact with their assets and resources. Instead of using expensive hardware that consumes exorbitant amounts of electricity to mine crypto, it leverages existing empty hard disk space on your computer(s) to farm crypto with minimal resources.

Read full post gdoc_arrow_right_alt

ClamAV

ClamAV
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 1.1.2-2 (Changelog)
Keywords: anti-virus, clamav
Train: Community
Home Page: https://www.clamav.net/
ClamAV Details
Added: 2024-08-01
Last Updated: 2025-09-02

ClamAV is an open source (GPLv2) anti-virus toolkit.

Run as Context
  • ClamAV runs as root user.
    Group: 0 / root
    User: 0 / root

Security Capabilities
  • ClamAV is able to change file ownership arbitrarily
  • ClamAV is able to bypass file permission checks
  • ClamAV is able to bypass permission checks for file operations
  • ClamAV is able to change group ID of processes
  • ClamAV is able to change user ID of processes

App Metadata (Raw File)
{
    "1.3.5": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/clamav/1.3.5",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "1.1.2-2_1.3.5",
        "version": "1.3.5",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "1.1.2-2",
            "capabilities": [
                {
                    "description": "ClamAV is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "ClamAV is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "ClamAV is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "ClamAV is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "ClamAV is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "security"
            ],
            "changelog_url": "https://github.com/Cisco-Talos/clamav/releases",
            "date_added": "2024-08-01",
            "description": "ClamAV is an open source (GPLv2) anti-virus toolkit.",
            "home": "https://www.clamav.net/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/clamav/icons/icon.png",
            "keywords": [
                "anti-virus",
                "clamav"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "clamav",
            "run_as_context": [
                {
                    "description": "ClamAV runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://docs.clamav.net/",
                "https://www.clamav.net/"
            ],
            "title": "ClamAV",
            "train": "community",
            "version": "1.3.5"
        },
        "schema": {
            "groups": [
                {
                    "name": "ClamAV Configuration",
                    "description": "Configure ClamAV"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for ClamAV"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for ClamAV"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for ClamAV"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for ClamAV"
                }
            ],
            "questions": [
                {
                    "variable": "clamav",
                    "label": "",
                    "group": "ClamAV Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "disable_clamd",
                                "label": "Disable Clamd",
                                "description": "Disable Clamd",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "disable_freshclamd",
                                "label": "Disable Freshclamd",
                                "description": "Disable Freshclamd",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "disable_milterd",
                                "label": "Disable Milterd",
                                "description": "Disable Milterd",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "clamd_startup_timeout",
                                "label": "Clamd Startup Timeout",
                                "description": "Clamd Startup Timeout",
                                "schema": {
                                    "type": "int",
                                    "default": 1800,
                                    "required": true
                                }
                            },
                            {
                                "variable": "freshclamd_checks",
                                "label": "Freshclamd Checks",
                                "description": "Freshclamd Checks",
                                "schema": {
                                    "type": "int",
                                    "default": 1,
                                    "min": 1,
                                    "max": 50,
                                    "required": 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": "network",
                    "label": "",
                    "group": "Network Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "clamd_port",
                                "label": "Clamd Port",
                                "schema": {
                                    "type": "dict",
                                    "show_if": [
                                        [
                                            "host_network",
                                            "=",
                                            false
                                        ]
                                    ],
                                    "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 30005,
                                                "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": "milterd_port",
                                "label": "Milterd Port",
                                "schema": {
                                    "type": "dict",
                                    "show_if": [
                                        [
                                            "host_network",
                                            "=",
                                            false
                                        ]
                                    ],
                                    "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 30006,
                                                "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": "host_network",
                                "label": "Host Network",
                                "description": "Bind to the host network. It's recommended to keep this disabled.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "storage",
                    "label": "",
                    "group": "Storage Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "sigdb",
                                "label": "ClamAV Signature Database Storage",
                                "description": "The path to store ClamAV Signature Database.",
                                "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": "sigdb"
                                                        }
                                                    },
                                                    {
                                                        "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": "scandir",
                                "label": "ClamAV Scan Directory Storage",
                                "description": "The path to store ClamAV Scan Directory.",
                                "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": "scandir"
                                                        }
                                                    },
                                                    {
                                                        "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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "clamav",
                                                                    "description": "clamav"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 ClamAV.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for ClamAV.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>ClamAV</h1> <p><a href=\"https://www.clamav.net/\">ClamAV</a> - ClamAV\u00ae is an open-source antivirus engine for detecting trojans, viruses, malware &amp; other malicious threats.</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "1.1.2-2",
            "capabilities": [
                {
                    "description": "ClamAV is able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "ClamAV is able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "ClamAV is able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "ClamAV is able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "ClamAV is able to change user ID of processes",
                    "name": "SETUID"
                }
            ],
            "categories": [
                "security"
            ],
            "changelog_url": "https://github.com/Cisco-Talos/clamav/releases",
            "date_added": "2024-08-01",
            "description": "ClamAV is an open source (GPLv2) anti-virus toolkit.",
            "home": "https://www.clamav.net/",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/clamav/icons/icon.png",
            "keywords": [
                "anti-virus",
                "clamav"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "clamav",
            "run_as_context": [
                {
                    "description": "ClamAV runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://docs.clamav.net/",
                "https://www.clamav.net/"
            ],
            "title": "ClamAV",
            "train": "community",
            "version": "1.3.5"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Cloudflared

Cloudflared
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 2025.8.1 (Changelog)
Keywords: network, cloudflare, tunnel
Train: Community
Home Page: https://github.com/cloudflare/cloudflared
Cloudflared Details
Added: 2024-08-02
Last Updated: 2025-09-02

Cloudflared is a client for Cloudflare Tunnel, a daemon that exposes private services through the Cloudflare edge.

Run as Context
  • Cloudflared runs as any non-root user.
    Group: 568 / cloudflared
    User: 568 / cloudflared

App Metadata (Raw File)
{
    "1.3.11": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/cloudflared/1.3.11",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "2025.8.1_1.3.11",
        "version": "1.3.11",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "2025.8.1",
            "capabilities": [],
            "categories": [
                "networking"
            ],
            "changelog_url": "https://github.com/cloudflare/cloudflared/blob/master/RELEASE_NOTES",
            "date_added": "2024-08-02",
            "description": "Cloudflared is a client for Cloudflare Tunnel, a daemon that exposes private services through the Cloudflare edge.",
            "home": "https://github.com/cloudflare/cloudflared",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/cloudflared/icons/icon.png",
            "keywords": [
                "network",
                "cloudflare",
                "tunnel"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "cloudflared",
            "run_as_context": [
                {
                    "description": "Cloudflared runs as any non-root user.",
                    "gid": 568,
                    "group_name": "cloudflared",
                    "uid": 568,
                    "user_name": "cloudflared"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://github.com/cloudflare/cloudflared",
                "https://hub.docker.com/r/cloudflare/cloudflared"
            ],
            "title": "Cloudflared",
            "train": "community",
            "version": "1.3.11"
        },
        "schema": {
            "groups": [
                {
                    "name": "Cloudflared Configuration",
                    "description": "Configure Cloudflared"
                },
                {
                    "name": "User and Group Configuration",
                    "description": "Configure User and Group for Cloudflared"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Cloudflared"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Cloudflared"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Cloudflared"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Cloudflared"
                }
            ],
            "questions": [
                {
                    "variable": "cloudflared",
                    "label": "",
                    "group": "Cloudflared Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "mode",
                                "label": "Mode",
                                "description": "The mode to use for Cloudflared.",
                                "schema": {
                                    "type": "string",
                                    "default": "tunnel",
                                    "enum": [
                                        {
                                            "value": "tunnel",
                                            "description": "Tunnel"
                                        },
                                        {
                                            "value": "proxy-dns",
                                            "description": "Proxy DNS"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "tunnel_token",
                                "label": "Tunnel Token",
                                "description": "The Tunnel Token to use for Cloudflared.",
                                "schema": {
                                    "type": "string",
                                    "show_if": [
                                        [
                                            "mode",
                                            "=",
                                            "tunnel"
                                        ]
                                    ],
                                    "required": true
                                }
                            },
                            {
                                "variable": "tunnel_dns_upstream",
                                "label": "Tunnel DNS Upstreams",
                                "description": "Upstream DNS servers to use for DNS over Cloudflare Tunnel.",
                                "schema": {
                                    "type": "list",
                                    "show_if": [
                                        [
                                            "mode",
                                            "=",
                                            "proxy-dns"
                                        ]
                                    ],
                                    "default": [
                                        "https://1.1.1.1/dns-query",
                                        "https://1.0.0.1/dns-query"
                                    ],
                                    "items": [
                                        {
                                            "variable": "upstream",
                                            "label": "Upstream",
                                            "schema": {
                                                "type": "string",
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "additional_args",
                                "label": "Additional Arguments",
                                "description": "Configure additional arguments for Cloudflared.",
                                "schema": {
                                    "type": "list",
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "arg",
                                            "label": "Argument",
                                            "schema": {
                                                "type": "string",
                                                "required": 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 Cloudflared files will be owned by.",
                                "schema": {
                                    "type": "int",
                                    "min": 568,
                                    "default": 568,
                                    "required": true
                                }
                            },
                            {
                                "variable": "group",
                                "label": "Group ID",
                                "description": "The group id that Cloudflared 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": "tunnel_dns_port",
                                "label": "Tunnel DNS Port",
                                "description": "Configure the port for DNS over Cloudflare Tunnel.",
                                "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": 8053,
                                                "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": "host_network",
                                "label": "Host Network",
                                "description": "Bind to the host network. It's recommended to keep this disabled.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "storage",
                    "label": "",
                    "group": "Storage Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "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.\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)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "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": "cloudflared",
                                                                    "description": "cloudflared"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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 Cloudflared.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Cloudflared.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Cloudflared</h1> <p><a href=\"https://github.com/cloudflare/cloudflared\">Cloudflared</a> is a client for Cloudflare Tunnel, a daemon that exposes private services through the Cloudflare edge.</p>",
        "changelog": null,
        "chart_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "2025.8.1",
            "capabilities": [],
            "categories": [
                "networking"
            ],
            "changelog_url": "https://github.com/cloudflare/cloudflared/blob/master/RELEASE_NOTES",
            "date_added": "2024-08-02",
            "description": "Cloudflared is a client for Cloudflare Tunnel, a daemon that exposes private services through the Cloudflare edge.",
            "home": "https://github.com/cloudflare/cloudflared",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/cloudflared/icons/icon.png",
            "keywords": [
                "network",
                "cloudflare",
                "tunnel"
            ],
            "lib_version": "2.1.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "cloudflared",
            "run_as_context": [
                {
                    "description": "Cloudflared runs as any non-root user.",
                    "gid": 568,
                    "group_name": "cloudflared",
                    "uid": 568,
                    "user_name": "cloudflared"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://github.com/cloudflare/cloudflared",
                "https://hub.docker.com/r/cloudflare/cloudflared"
            ],
            "title": "Cloudflared",
            "train": "community",
            "version": "1.3.11"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Collabora

Collabora
Get Started with Apps!
Requires TrueNAS: 24.10.2.2 or newer
App Version: 25.04.5.1.1 (Changelog)
Keywords: office, documents, productivity
Train: Stable
Home Page: https://www.collaboraoffice.com/
Collabora Details
Added: 2024-08-02
Last Updated: 2025-09-02

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

Screenshots
Screenshot 1

Security Capabilities
  • Collabora, Nginx are able to change file ownership arbitrarily
  • Collabora, Nginx are able to bypass file permission checks
  • Collabora, Nginx are able to bypass permission checks for file operations
  • Collabora is able to create special files using mknod()
  • Collabora is able to set file capabilities on other files
  • Collabora, Nginx are able to change group ID of processes
  • Collabora, Nginx are able to change user ID of processes
  • Collabora is able to use chroot() system call

App Metadata (Raw File)
{
    "1.3.14": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/stable/collabora/1.3.14",
        "last_update": "2025-09-02 11:33:24",
        "required_features": [],
        "human_version": "25.04.5.1.1_1.3.14",
        "version": "1.3.14",
        "app_metadata": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "25.04.5.1.1",
            "capabilities": [
                {
                    "description": "Collabora, Nginx are able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Collabora, Nginx are able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Collabora, Nginx are able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Collabora is able to create special files using mknod()",
                    "name": "MKNOD"
                },
                {
                    "description": "Collabora is able to set file capabilities on other files",
                    "name": "SETFCAP"
                },
                {
                    "description": "Collabora, Nginx are able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Collabora, Nginx are able to change user ID of processes",
                    "name": "SETUID"
                },
                {
                    "description": "Collabora is able to use chroot() system call",
                    "name": "SYS_CHROOT"
                }
            ],
            "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.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "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.3.14"
        },
        "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",
                                "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": "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",
                                                "show_if": [
                                                    [
                                                        "bind_mode",
                                                        "=",
                                                        "published"
                                                    ]
                                                ],
                                                "default": 9980,
                                                "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": "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",
                                "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",
                                                            "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,
                                                                        "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"
                                                                },
                                                                {
                                                                    "value": "nginx",
                                                                    "description": "nginx"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "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": {
            "annotations": {
                "min_scale_version": "24.10.2.2"
            },
            "app_version": "25.04.5.1.1",
            "capabilities": [
                {
                    "description": "Collabora, Nginx are able to change file ownership arbitrarily",
                    "name": "CHOWN"
                },
                {
                    "description": "Collabora, Nginx are able to bypass file permission checks",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Collabora, Nginx are able to bypass permission checks for file operations",
                    "name": "FOWNER"
                },
                {
                    "description": "Collabora is able to create special files using mknod()",
                    "name": "MKNOD"
                },
                {
                    "description": "Collabora is able to set file capabilities on other files",
                    "name": "SETFCAP"
                },
                {
                    "description": "Collabora, Nginx are able to change group ID of processes",
                    "name": "SETGID"
                },
                {
                    "description": "Collabora, Nginx are able to change user ID of processes",
                    "name": "SETUID"
                },
                {
                    "description": "Collabora is able to use chroot() system call",
                    "name": "SYS_CHROOT"
                }
            ],
            "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.49",
            "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
            "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.3.14"
        }
    }
}


Resources

Read full post gdoc_arrow_right_alt

Collabora Deployment Notes

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.

We welcome community contributions to keep this documentation current! Click Edit Page in the top right corner to propose changes to this article.

The TrueNAS Collabora app offers an efficient solution for deploying and managing a powerful online office suite. TrueNAS installs the Collabora app in a Docker container using Docker Compose. Once deployed, you can access the Collabora Online interface through TrueNAS, enabling seamless document editing and collaboration. Collabora supports popular file formats like DOCX, XLSX, and PPTX, ensuring compatibility with Microsoft Office documents. With real-time collaboration, robust editing tools, and integration with platforms like Nextcloud, the Collabora app provides a reliable and feature-rich environment for your productivity needs.

Read full post gdoc_arrow_right_alt