| title | Semaphore UI Documentation |
|---|---|
| description | Start page for the Semaphore UI docs - a one-command quick start plus entry points for installing, running, operating, and reference. |
| sidebar_label | Home |
| hide_table_of_contents | true |
import Link from '@docusaurus/Link';
Semaphore UI is a self-hosted web UI and API for running Ansible, Terraform/OpenTofu, Shell, PowerShell, and Python automation. It gives your team one place to run playbooks and scripts, keep credentials encrypted, schedule jobs, and see who ran what and when.
It ships as a single Go binary or Docker image, runs on Linux, macOS, and Windows, and stores data in SQLite, MySQL, or PostgreSQL.
New to Semaphore? The Introduction explains what it does, how a deployment is put together, and what to prepare before installing.
:::tip[Quick start]
Run Semaphore with SQLite in one command, then open http://localhost:3000 and log in as admin / changeme.
docker run -d -p 3000:3000 \
-e SEMAPHORE_DB_DIALECT=sqlite \
-e SEMAPHORE_ADMIN=admin \
-e SEMAPHORE_ADMIN_PASSWORD=changeme \
-e SEMAPHORE_ADMIN_NAME=Admin \
-e SEMAPHORE_ADMIN_EMAIL=admin@localhost \
-v semaphore-data:/var/lib/semaphore \
semaphoreui/semaphore:latestFor production, see Installation for Docker Compose, packages, Kubernetes, and binary installs. Then follow Getting Started to run your first task.
:::
- Questions: ask on Discord.
- Bugs and feature requests: open an issue on GitHub.
- Source code: github.com/semaphoreui/semaphore.
- Pro and Enterprise: License activation.