Modern UI for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.
If your project has grown and deploying from the terminal is no longer feasible, then Semaphore UI is the tool you need.
Semaphore UI is a modern web interface for managing popular DevOps tools.
Semaphore UI allows you to:
- Easily run Ansible playbooks, Terraform and OpenTofu code, as well as Bash and PowerShell scripts.
- Receive notifications about failed tasks.
- Control access to your deployment system.
- Projects is a collection of related resources, configurations, and tasks.
- Task Templates are reusable definitions of tasks that can be executed on demand or scheduled.
- Task is a specific instance of a job or operation executed by Semaphore.
- Schedules allow you to automate task execution at specified times or intervals.
- Inventory is a collection of target hosts (servers, virtual machines, containers, etc.) on which tasks will be executed.
- Variable Group refers to a configuration context that holds sensitive information such as environment variables and secrets used by tasks during execution.
You can install Semaphore using the following methods:
- Docker
- Deploy a VM from a marketplace:
- Snap
- Binary file
- Debian or RPM package
The most popular way to install Semaphore is via Docker.
docker run -p 3000:3000 --name semaphore \
-e SEMAPHORE_DB_DIALECT=bolt \
-e SEMAPHORE_ADMIN=admin \
-e SEMAPHORE_ADMIN_PASSWORD=changeme \
-e SEMAPHORE_ADMIN_NAME=Admin \
-e SEMAPHORE_ADMIN_EMAIL=admin@localhost \
-d semaphoreui/semaphore:latest
We recommend using the Container Configurator to get the ideal Docker configuration for Semaphore.
For more installation options, visit our Installation page.
A curated list of awesome things related to Semaphore UI.
- Ebdruplab — Ansible Collections — Ansible modules and a role for managing Semaphore.
- SemaphoreUI MCP Server — A Model Context Protocol (MCP) server that provides AI assistants with powerful automation capabilities for SemaphoreUI.
- Terraform SemaphoreUI Provider — Manage Semaphore UI resources using Terraform.
- PSSemaphore — A PowerShell module designed to work against the Ansible Semaphore REST API.
- Contribution Guide
- Dev Container (default user
admin/changeme)
MIT © Denis Gukov
