No description
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Rootless podman deployment of ghcr.io/open-webui/open-terminal via the shared deployment role: pasta networking, configurable api key, image variant, multi-user workspace path, and OPEN_TERMINAL_* passthrough via openterminal_deploy_env. Agent: pi |
||
| defaults | ||
| meta | ||
| tasks | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
ansible-roles-openterminal
This role deploys a podman based open-terminal instance, a lightweight self-hosted terminal giving AI agents and automation tools a dedicated environment to run commands through a simple API.
Open Terminal is authored by the Open WebUI team —
source: https://github.com/open-webui/open-terminal (mirrored at https://git.boxcar.sh/mirrors/open-terminal),
MIT licensed. API docs are served at /docs on a running instance.
Task Configuration
- name: Setup Open Terminal
hosts: somehost
become: true
roles:
- role: openterminal
- role: caddy
caddy_sites:
- name: openterminal
url: shell.somehost.com
dns: cloudflare
srv: 8000
log: true
Open WebUI integration (system-level, proxied through the WebUI backend):
Admin Settings → Integrations → Open Terminal, using the terminal URL and
openterminal_api_key.
Deployment and Removal
systemctl --user stop container-openterminal.service
Deploy
ansible-playbook -i hosts deploy.yml --tags=openterminal --limit=somehost
Remove
ansible-playbook -i hosts deploy.yml --tags=openterminal --extra-vars "openterminal_state=absent" --limit=somehost