Cockpit¶
| Description / name | Input element |
|---|---|
| Your domain name |
Overview¶
Cockpit is an interactive server admin interface that makes Linux servers discoverable and manageable through a web browser, providing comprehensive server management capabilities with a modern web interface.
Deployment¶
sb install sandbox-cockpit
Usage¶
Visit https://cockpit.iYOUR_DOMAIN_NAMEi.
Role Defaults¶
Use the Inventory to customize variables. (1)
-
Example override
cockpit_name: "custom_value"Avoid overriding variables ending in
_defaultWhen overriding variables that end in
_default(likecockpit_docker_envs_default), you replace the entire default configuration. Future updates that add new default values will not be applied to your setup, potentially breaking functionality.Instead, use the corresponding
_customvariable (likecockpit_docker_envs_custom) to add your changes. Custom values are merged with defaults, ensuring you receive updates.
cockpit_name
# Type: string
cockpit_name: cockpit
cockpit_role_vm_enabled
# Type: bool (true/false)
cockpit_role_vm_enabled: false
cockpit_role_service_after
# Type: string
cockpit_role_service_after: docker.service
cockpit_role_put_dpkg_into_hold
# Type: bool (true/false)
cockpit_role_put_dpkg_into_hold: true
cockpit_role_put_machines_dpkg_into_hold
# Type: bool (true/false)
cockpit_role_put_machines_dpkg_into_hold: true
cockpit_role_web_subdomain
# Type: string
cockpit_role_web_subdomain: "{{ cockpit_name }}"
cockpit_role_web_domain
# Type: string
cockpit_role_web_domain: "{{ user.domain }}"
cockpit_role_web_port
# Type: string
cockpit_role_web_port: "1337"
cockpit_role_web_url
# Type: string
cockpit_role_web_url: "{{ 'https://' + (lookup('role_var', '_web_subdomain', role='cockpit') + '.' + lookup('role_var', '_web_domain', role='cockpit')
if (lookup('role_var', '_web_subdomain', role='cockpit') | length > 0)
else lookup('role_var', '_web_domain', role='cockpit')) }}"
cockpit_role_dns_record
# Type: string
cockpit_role_dns_record: "{{ lookup('role_var', '_web_subdomain', role='cockpit') }}"
cockpit_role_dns_zone
# Type: string
cockpit_role_dns_zone: "{{ lookup('role_var', '_web_domain', role='cockpit') }}"
cockpit_role_dns_proxy
# Type: bool (true/false)
cockpit_role_dns_proxy: "{{ dns_proxied }}"
cockpit_role_traefik_sso_middleware
# Type: string
cockpit_role_traefik_sso_middleware: "{{ traefik_default_sso_middleware }}"
cockpit_role_traefik_middleware_default
# Type: string
cockpit_role_traefik_middleware_default: "{{ traefik_default_middleware }}"
cockpit_role_traefik_middleware_custom
# Type: string
cockpit_role_traefik_middleware_custom: ""
cockpit_role_traefik_certresolver
# Type: string
cockpit_role_traefik_certresolver: "{{ traefik_default_certresolver }}"
cockpit_role_traefik_enabled
# Type: bool (true/false)
cockpit_role_traefik_enabled: true
cockpit_role_traefik_api_enabled
# Type: bool (true/false)
cockpit_role_traefik_api_enabled: false
cockpit_role_dns_enabled
# Enable or disable automatic DNS record creation for the container
# Type: bool (true/false)
cockpit_role_dns_enabled: true
cockpit_role_themepark_addons
# Type: string
cockpit_role_themepark_addons:
cockpit_role_themepark_app
# Type: string
cockpit_role_themepark_app:
cockpit_role_themepark_theme
# Type: string
cockpit_role_themepark_theme:
cockpit_role_traefik_api_endpoint
# Type: dict/omit
cockpit_role_traefik_api_endpoint:
cockpit_role_traefik_api_middleware
# Type: string
cockpit_role_traefik_api_middleware:
cockpit_role_traefik_api_middleware_http
# Type: string
cockpit_role_traefik_api_middleware_http:
cockpit_role_traefik_autodetect_enabled
# Enable Traefik autodetect middleware for the container
# Type: bool (true/false)
cockpit_role_traefik_autodetect_enabled: false
cockpit_role_traefik_certresolver
# Type: string
cockpit_role_traefik_certresolver:
cockpit_role_traefik_crowdsec_enabled
# Enable CrowdSec middleware for the container
# Type: bool (true/false)
cockpit_role_traefik_crowdsec_enabled: false
cockpit_role_traefik_error_pages_enabled
# Enable custom error pages middleware for the container
# Type: bool (true/false)
cockpit_role_traefik_error_pages_enabled: false
cockpit_role_traefik_gzip_enabled
# Enable gzip compression middleware for the container
# Type: bool (true/false)
cockpit_role_traefik_gzip_enabled: false
cockpit_role_traefik_middleware_http
# Type: string
cockpit_role_traefik_middleware_http:
cockpit_role_traefik_middleware_http_api_insecure
# Type: bool (true/false)
cockpit_role_traefik_middleware_http_api_insecure:
cockpit_role_traefik_middleware_http_insecure
# Type: bool (true/false)
cockpit_role_traefik_middleware_http_insecure:
cockpit_role_traefik_priority
# Type: string
cockpit_role_traefik_priority:
cockpit_role_traefik_robot_enabled
# Enable robots.txt middleware for the container
# Type: bool (true/false)
cockpit_role_traefik_robot_enabled: true
cockpit_role_traefik_tailscale_enabled
# Enable Tailscale-specific Traefik configuration for the container
# Type: bool (true/false)
cockpit_role_traefik_tailscale_enabled: false
cockpit_role_traefik_wildcard_enabled
# Enable wildcard certificate for the container
# Type: bool (true/false)
cockpit_role_traefik_wildcard_enabled: true
cockpit_role_web_domain
# Type: string
cockpit_role_web_domain:
cockpit_role_web_fqdn_override
# Override the Traefik fully qualified domain name (FQDN) for the container
# Type: list
cockpit_role_web_fqdn_override:
Example Override
cockpit_role_web_fqdn_override:
- "{{ traefik_host }}"
- "cockpit2.{{ user.domain }}"
- "cockpit.otherdomain.tld"
Note: Include {{ traefik_host }} to preserve the default FQDN alongside your custom entries
cockpit_role_web_host_override
# Override the Traefik web host configuration for the container
# Type: string
cockpit_role_web_host_override:
Example Override
cockpit_role_web_host_override: "Host(`{{ traefik_host }}`) || Host(`{{ 'cockpit2.' + user.domain }}`)"
Note: Use {{ traefik_host }} to include the default host configuration in your custom rule
cockpit_role_web_http_port
# Type: string (quoted number)
cockpit_role_web_http_port:
cockpit_role_web_http_scheme
# Type: string ("http"/"https")
cockpit_role_web_http_scheme:
cockpit_role_web_http_serverstransport
# Type: dict/omit
cockpit_role_web_http_serverstransport:
cockpit_role_web_scheme
# URL scheme to use for web access to the container
# Type: string ("http"/"https")
cockpit_role_web_scheme:
cockpit_role_web_serverstransport
# Type: dict/omit
cockpit_role_web_serverstransport:
cockpit_role_web_subdomain
# Type: string
cockpit_role_web_subdomain: