{ "slug": "arcane-agent", "kind": "compose", "metadata": { "name": "Arcane Agent", "description": "Remote Docker host agent for Arcane manager environments, supporting direct inbound and edge outbound connection modes.", "tags": [ "docker", "management", "agent" ], "icon": { "provider": "selfhst", "id": "arcane", "color": "violet" }, "draft": false, "version": { "name": "v2.1.0", "source_dep_name": "ghcr.io/getarcaneapp/agent", "source_dep_version": "v2.1.0" } }, "variables": [ { "title": "General", "name": "general", "items": [ { "name": "service_name", "type": "str", "title": "Service Name", "required": false, "description": "Name of the Docker Compose service. Leave empty to omit/fall back to Arcane defaults.", "config": { "placeholder": "arcane-agent" } }, { "name": "container_name", "type": "str", "title": "Container Name", "required": false, "description": "Name to use for the container. Leave empty to omit/fall back to Arcane defaults.", "config": { "placeholder": "arcane-agent" } }, { "name": "container_timezone", "type": "str", "title": "Container Timezone", "required": false, "config": { "placeholder": "Europe/Berlin" } }, { "name": "restart_policy", "type": "enum", "title": "Restart Policy", "required": true, "default": "unless-stopped", "config": { "options": [ "unless-stopped", "always", "on-failure", "no" ] } }, { "name": "docker_socket_path", "type": "str", "title": "Docker Socket Path", "required": true, "default": "/var/run/docker.sock", "config": { "placeholder": "/var/run/docker.sock" } } ] }, { "title": "Advanced", "name": "advanced", "items": [ { "name": "project_mount_path", "type": "str", "title": "Project Mount Path", "required": false, "description": "Optional host path mounted to /app/data/projects for agent-visible project/Compose stack storage. Leave empty to skip this mount.", "config": { "placeholder": "/path/to/projects" } } ] }, { "title": "Agent Connection", "name": "connection", "items": [ { "name": "connection_mode", "type": "enum", "title": "Connection Mode", "required": false, "default": "direct", "description": "Direct exposes TCP 3553 for the manager to connect inbound. Edge connects outbound from the agent to the manager.", "config": { "options": [ "direct", "edge" ] } }, { "name": "edge_transport", "type": "enum", "title": "Transport Mode", "required": false, "default": "poll", "description": "Arcane agent transport. Official generated snippets default to poll; auto keeps a live tunnel when possible.", "config": { "options": [ "poll", "auto" ] } }, { "name": "manager_api_url", "type": "str", "title": "Manager API URL", "required": true, "default": "http://arcane:3552", "description": "Arcane manager API URL reachable from the agent.", "config": { "placeholder": "https://arcane.example.com" } }, { "name": "agent_token", "type": "secret", "title": "Agent Token", "required": true, "description": "Agent token generated by Arcane when creating the remote environment." } ] }, { "title": "Storage", "name": "storage", "items": [ { "name": "volume_mode", "type": "enum", "title": "Volume Mode", "required": false, "default": "local", "config": { "options": [ "local", "mount", "nfs" ] } }, { "name": "volume_mount_path", "type": "str", "title": "Data Mount Path", "required": false, "default": "", "description": "Host path for agent data when using mount mode.", "needs": [ "volume_mode=mount" ], "config": { "placeholder": "/opt/arcane-agent/data" } }, { "name": "volume_nfs_server", "type": "str", "title": "NFS Server", "required": false, "default": "", "needs": [ "volume_mode=nfs" ], "config": { "placeholder": "nas.home.arpa" } }, { "name": "volume_nfs_path", "type": "str", "title": "NFS Path", "required": false, "default": "", "description": "NFS export path for Arcane agent data.", "needs": [ "volume_mode=nfs" ], "config": { "placeholder": "/export/app" } }, { "name": "volume_nfs_options", "type": "str", "title": "NFS Options", "required": false, "default": "rw", "needs": [ "volume_mode=nfs" ], "config": { "placeholder": "rw" } } ] }, { "title": "Ports", "name": "ports", "items": [ { "name": "ports_agent", "type": "int", "title": "Agent Port", "required": false, "default": 3553, "needs": [ "connection_mode=direct" ], "config": { "placeholder": "3553" } } ] } ] }