Gitpedia

Semaphore

Modern UI and powerful API for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.

From semaphoreui·Updated May 31, 2026·View on GitHub·

Modern UI for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools. The project is written primarily in Go, distributed under the MIT License license, first published in 2014. It has gained significant community traction with 13,679 stars and 1,257 forks on GitHub. Key topics include: ansible, awx, ci, cicd, devops.

Latest release: v2.18.4
May 18, 2026View Changelog →

Semaphore UI

Modern UI for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.

roadmap
telegram
youtube

<!-- [![docker](https://img.shields.io/badge/container_configurator-white?style=for-the-badge&logo=docker)](https://semaphoreui.com/install/docker/) -->

responsive-ui-phone1

If your project has grown and deploying from the terminal is no longer feasible, then Semaphore UI is the tool you need.

Demo

Try Semaphore UI online

<!-- ## Live Demo Try the latest version of Semaphore at [https://portal.semaphoreui.com](https://portal.semaphoreui.com). -->

What is Semaphore UI?

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.

Key Concepts

  1. Projects is a collection of related resources, configurations, and tasks.
  2. Task Templates are reusable definitions of tasks that can be executed on demand or scheduled.
  3. Task is a specific instance of a job or operation executed by Semaphore.
  4. Schedules allow you to automate task execution at specified times or intervals.
  5. Inventory is a collection of target hosts (servers, virtual machines, containers, etc.) on which tasks will be executed.
  6. Variable Group refers to a configuration context that holds sensitive information such as environment variables and secrets used by tasks during execution.

Getting Started

You can install Semaphore using the following methods:

Docker

The most popular way to install Semaphore is via Docker.

docker run -p 3000:3000 --name semaphore \
	-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 \
	-d semaphoreui/semaphore:latest

We recommend using the Container Configurator to get the ideal Docker configuration for Semaphore.

<!-- ### SaaS We offer a SaaS solution for using Semaphore UI without installation. Check it out at [Semaphore Cloud](https://portal.semaphoreui.com). -->

Other Installation Methods

For more installation options, visit our Installation page.

Documentation

Awesome Semaphore

A curated list of awesome things related to Semaphore UI.

Contribution

License

MIT © Denis Gukov

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from semaphoreui/semaphore via the GitHub API.Last fetched: 5/31/2026