Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 24 additions & 22 deletions src/README.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,43 @@
# Welcome to Semaphore UI

## What is Semaphore UI?

Semaphore UI is a modern UI and powerful API for Ansible, Terraform, OpenTofu, PowerShell and other DevOps tools.
Semaphore UI is a modern interface and API for running Ansible, Terraform/OpenTofu, PowerShell, Python, and shell automation with minimal overhead. This documentation helps you evaluate, deploy, and operate Semaphore confidently.

<img style="box-shadow: none;" src=".gitbook/assets/134777345-8789d9e4-ff0d-439c-b80e-ddc56b74fcee.webp">

Semaphore is written in pure Go and available for Windows, macOS and Linux (x64, ARM, ARM64). Semaphore is an open-source project with concise and high-quality code.
## Why Semaphore

Semaphore supports the following databases:
Semaphore is written in Go and ships as a single binary for Windows, macOS, and Linux (x64, ARM, ARM64). It pairs a lightweight architecture with enterprise features:

* MySQL
* PostgreSQL
* [BoltDB](https://github.com/etcd-io/bbolt) – embedded key/value database
* Works with MySQL, PostgreSQL, or embedded BoltDB.
* Encrypts secrets at rest and integrates with LDAP and OpenID Connect.
* Offers a responsive web UI, REST API, and CLI for the same workflows.
* Scales horizontally with remote runners and project-scoped permissions.

With Semaphore you can:

* [Build, deploy and rollback](./administration-guide/cicd.md)
* Group playbooks to projects
* Manage environments, inventories, repositories and access keys
* Run playbooks from the browser. Responsive UI allows the use of Semaphore on mobile devices
* Run playbooks by schedule
* View detailed logs of any playbook runs, at any time
* Delegate other users the running of playbooks
* Get notifications about playbook runs
* [Build, deploy, and roll back automation pipelines](./administration-guide/cicd.md).
* Organize playbooks and scripts into projects with fine-grained access control.
* Manage inventories, repositories, secrets, and environment variables centrally.
* Run tasks manually, on schedules, or through the API/CLI, and monitor detailed logs.
* Notify teams via email, chat, and webhooks when automation completes.

## Where to start

* **New to Semaphore?** Begin with [Getting Started](./getting-started/README.md) for a 10-minute quick start, core concepts, and a UI tour.
* **Running production?** Jump to the [Admin Guide](./administration-guide/README.md) for installation, configuration, security, and integration topics.
* **Operating day-to-day?** Head over to the [User Guide](./user-guide/README.md) to learn how to create projects, templates, and schedules.

## Links
## Helpful links

* Source code: [https://github.com/semaphoreui/semaphore](https://github.com/semaphoreui/semaphore)
* Issue tracking: [https://github.com/semaphoreui/semaphore/issues](https://github.com/semaphoreui/semaphore/issues)
* Docker: [https://hub.docker.com/r/semaphoreui/semaphore](https://hub.docker.com/r/semaphoreui/semaphore)
* Snap: [https://snapcraft.io/semaphore](https://snapcraft.io/semaphore)
* Docker images: [https://hub.docker.com/r/semaphoreui/semaphore](https://hub.docker.com/r/semaphoreui/semaphore)
* Snap package: [https://snapcraft.io/semaphore](https://snapcraft.io/semaphore)
* Contact: [denis@semaphoreui.com](mailto:denis@semaphoreui.com)
* Docker container configurator:

[![](https://img.shields.io/badge/docker_configurator-0050ab?style=for-the-badge&logo=docker)](https://semaphoreui.com/install/docker/)
[![](https://img.shields.io/badge/docker_configurator-0050ab?style=for-the-badge&logo=docker)](https://semaphoreui.com/install/docker/)

* Our responsive community:
* Community chat:

[![discord](https://img.shields.io/badge/discord_community-510b80?style=for-the-badge&logo=discord)](https://discord.gg/5R6k7hNGcH)
[![discord](https://img.shields.io/badge/discord_community-510b80?style=for-the-badge&logo=discord)](https://discord.gg/5R6k7hNGcH)
128 changes: 64 additions & 64 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,93 +2,93 @@

* [Welcome to Semaphore UI](./README.md)

* [Getting Started](./getting-started/README.md)
* [Quick Start](./getting-started/quickstart.md)
* [Core Concepts](./getting-started/concepts.md)
* [UI Tour](./getting-started/ui-tour.md)
* [Next Steps](./getting-started/next-steps.md)

* [Admin Guide](./administration-guide/README.md)
<!-- * [Introduction](./administration-guide/introduction.md) -->
* [Installation](./administration-guide/installation.md)
* [Plan & Install](./administration-guide/installation.md)
* [Package manager](./administration-guide/installation/package-manager.md)
* [Docker](./administration-guide/installation/docker.md)
* [Cloud](./administration-guide/installation/cloud.md)
* [Binary file](./administration-guide/installation/binary-file.md)
* [Kubernetes (Helm chart)](./administration-guide/installation/k8s.md)
* [Manual installation](./administration-guide/installation_manually.md)
* [Snap (deprecated)](./administration-guide/installation/snap.md)
* [Manual Installation](./administration-guide/installation\_manually.md)
* [Configuration](./administration-guide/configuration.md)
* [Configure & Harden](./administration-guide/configuration.md)
* [Configuration file](./administration-guide/configuration/config-file.md)
* [Environment variables](./administration-guide/configuration/env-vars.md)
* [Interactive setup](./administration-guide/configuration/cli.md)
* [Snap configuration](./administration-guide/configuration/snap.md)
* [Upgrading](./administration-guide/upgrading.md)
* [Security](./administration-guide/security.md)
* [Database security](./administration-guide/security/database.md)
* [Network security](./administration-guide/security/network.md)
* [NGINX config](./administration-guide/security/nginx.md)
* [Apache config](./administration-guide/security/apache.md)
* [Kerberos](./administration-guide/security/kerberos.md)
* [CLI](./administration-guide/cli.md)
* [Users](./administration-guide/cli/users.md)
* [Vaults](./administration-guide/cli/vaults.md)
* [Runners](./administration-guide/cli/runners.md)
* [Database migrations](./administration-guide/cli/migrations.md)
* [LDAP](./administration-guide/ldap.md)
* [OpenID](./administration-guide/openid.md)
* [GitHub config](./administration-guide/openid/github.md)
* [Google config](./administration-guide/openid/google.md)
* [GitLab config](./administration-guide/openid/gitlab.md)
* [Gitea config](./administration-guide/openid/gitea.md)
* [Authelia config](./administration-guide/openid/authelia.md)
* [Authentik config](./administration-guide/openid/authentik.md)
* [Keycloak config](./administration-guide/openid/keycloak.md)
* [Okta config](./administration-guide/openid/okta.md)
* [Azure config](./administration-guide/openid/azure.md)
* [Zitadel config](./administration-guide/openid/zitadel.md)
* [API](./administration-guide/api.md)
* [Pipelines](./administration-guide/cicd.md)
* [Runners](./administration-guide/runners.md)
* [Logs](./administration-guide/logs.md)
* [Notifications](./administration-guide/notifications.md)
* [Email](./administration-guide/notifications/email.md)
* [Telegram](./administration-guide/notifications/telegram.md)
* [Slack](./administration-guide/notifications/slack.md)
* [Teams](./administration-guide/notifications/teams.md)
* [Rocket.Chat](./administration-guide/notifications/rocket.md)
* [DingTalk](./administration-guide/notifications/ding.md)
* [Gotify](./administration-guide/notifications/gotify.md)

* [Troubleshooting](./administration-guide/troubleshooting.md)
* [Security overview](./administration-guide/security.md)
* [Database security](./administration-guide/security/database.md)
* [Network security](./administration-guide/security/network.md)
* [NGINX config](./administration-guide/security/nginx.md)
* [Apache config](./administration-guide/security/apache.md)
* [Kerberos](./administration-guide/security/kerberos.md)
* [Authenticate & Authorize](./administration-guide/openid.md)
* [LDAP](./administration-guide/ldap.md)
* [OpenID: provider setup](./administration-guide/openid.md)
* [GitHub config](./administration-guide/openid/github.md)
* [Google config](./administration-guide/openid/google.md)
* [GitLab config](./administration-guide/openid/gitlab.md)
* [Gitea config](./administration-guide/openid/gitea.md)
* [Authelia config](./administration-guide/openid/authelia.md)
* [Authentik config](./administration-guide/openid/authentik.md)
* [Keycloak config](./administration-guide/openid/keycloak.md)
* [Okta config](./administration-guide/openid/okta.md)
* [Azure config](./administration-guide/openid/azure.md)
* [Zitadel config](./administration-guide/openid/zitadel.md)
* [Integrate & Automate](./administration-guide/cicd.md)
* [API](./administration-guide/api.md)
* [CLI](./administration-guide/cli.md)
* [Users](./administration-guide/cli/users.md)
* [Vaults](./administration-guide/cli/vaults.md)
* [Runners](./administration-guide/cli/runners.md)
* [Database migrations](./administration-guide/cli/migrations.md)
* [Runners](./administration-guide/runners.md)
* [Logs](./administration-guide/logs.md)
* [Notifications](./administration-guide/notifications.md)
* [Email](./administration-guide/notifications/email.md)
* [Telegram](./administration-guide/notifications/telegram.md)
* [Slack](./administration-guide/notifications/slack.md)
* [Teams](./administration-guide/notifications/teams.md)
* [Rocket.Chat](./administration-guide/notifications/rocket.md)
* [DingTalk](./administration-guide/notifications/ding.md)
* [Gotify](./administration-guide/notifications/gotify.md)
* [Maintain & Recover](./administration-guide/upgrading.md)
* [Troubleshooting](./administration-guide/troubleshooting.md)


* [User Guide](./user-guide/README.md)
* [Projects](./user-guide/projects.md)
* [Organize work](./user-guide/projects.md)
* [History](./user-guide/projects/history.md)
* [Activity](./user-guide/projects/activity.md)
* [Settings](./user-guide/projects/settings.md)
* [Team](./user-guide/team.md)
* [Runners (Pro)](./user-guide/projects/runners.md)
* [Task Templates](./user-guide/task-templates/README.md)
* [Connect resources](./user-guide/repositories.md)
* [Repositories](./user-guide/repositories.md)
* [Bitbucket Access Token](./user-guide/repositories/bitbucket_access_token.md)
* [Inventory](./user-guide/inventory.md)
* [Kerberos](./user-guide/inventory/kerberos.md)
* [NetBox dynamic inventory](./user-guide/netbox-dynamic-inventory.md)
* [Variable Groups](./user-guide/environment.md)
* [Key Store](./user-guide/key-store.md)
* [GitLab](./user-guide/key-store/gitlab.md)
* [Build automation](./user-guide/task-templates/README.md)
* [Ansible](./user-guide/task-templates/apps/ansible.md)
* [Terraform/OpenTofu](./user-guide/task-templates/apps/terraform.md)
* [Workspaces](./user-guide/task-templates/apps/terraform/workspaces.md)
* [HTTP Backend (Pro)](./user-guide/task-templates/apps/terraform/states.md)
* [Workspaces](./user-guide/task-templates/apps/terraform/workspaces.md)
* [HTTP Backend (Pro)](./user-guide/task-templates/apps/terraform/states.md)
* [Shell/Bash scripts](./user-guide/task-templates/apps/bash.md)
* [PowerShell](./user-guide/task-templates/apps/powershell.md)
* [Python](./user-guide/task-templates/apps/python.md)
* [Survey Variables](./user-guide/task-templates/survey-vars.md)
* [Tasks](./user-guide/tasks.md)
* [Schedules](./user-guide/schedules.md)
* [Key Store](./user-guide/key-store.md)
* [GitLab](./user-guide/key-store/gitlab.md)
* [Inventory](./user-guide/inventory.md)
* [Kerberos](./user-guide/inventory/kerberos.md)
* [NetBox dynamic inventory](./user-guide/netbox-dynamic-inventory.md)
* [Variable Groups](./user-guide/environment.md)
* [Repositories](./user-guide/repositories.md)
* [Bitbucket Access Token](./user-guide/repositories/bitbucket_access_token.md)
* [Integrations](./user-guide/integrations.md)
* [Team](./user-guide/team.md)
<!-- * [Admin](./user-guide/admin/README.md)
* [Users](./user-guide/admin/users.md)
* [Runners](./user-guide/admin/runners.md)
* [Active Tasks](./user-guide/admin/tasks.md)
* [Subscription 🅿](./user-guide/admin/subscription.md) -->
* [Run & monitor](./user-guide/tasks.md)
* [Schedules](./user-guide/schedules.md)
* [Integrations](./user-guide/integrations.md)

* [FAQ]()
* [Troubleshooting](./faq/troubleshooting.md)
115 changes: 67 additions & 48 deletions src/administration-guide/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Administration Guide

Welcome to the Semaphore UI Administration Guide. This guide provides comprehensive information for installing, configuring, and maintaining your Semaphore instance.
Welcome to the Semaphore UI Administration Guide. This guide provides comprehensive information for installing, configuring, securing, and maintaining your Semaphore instance.

> Just evaluating or setting up your first project? Start with the [Getting Started](../getting-started/README.md) section before diving into the full administration topics.

## What is Semaphore UI?

Expand Down Expand Up @@ -35,50 +37,67 @@ This guide will walk you through setting up and managing these features for your

## Quick links

- Installation: [Overview](./installation.md)
- [Package manager](./installation/package-manager.md)
- [Docker](./installation/docker.md)
- [Binary file](./installation/binary-file.md)
- [Kubernetes (Helm chart)](./installation/k8s.md)
- [Cloud](./installation/cloud.md)
- [Snap (deprecated)](./installation/snap.md)
- [Manual installation](./installation_manually.md)
- Configuration: [Overview](./configuration.md)
- [Configuration file](./configuration/config-file.md)
- [Environment variables](./configuration/env-vars.md)
- [Interactive setup](./configuration/cli.md)
- [Snap configuration](./configuration/snap.md)
- Security: [Overview](./security.md)
- [Database security](./security/database.md)
- [Network security](./security/network.md)
- [NGINX config](./security/nginx.md)
- [Apache config](./security/apache.md)
- [Kerberos](./security/kerberos.md)
- Authentication:
- [LDAP](./ldap.md)
- [OpenID](./openid.md)
- [GitHub](./openid/github.md)
- [Google](./openid/google.md)
- [GitLab](./openid/gitlab.md)
- [Gitea](./openid/gitea.md)
- [Authelia](./openid/authelia.md)
- [Authentik](./openid/authentik.md)
- [Keycloak](./openid/keycloak.md)
- [Okta](./openid/okta.md)
- [Azure](./openid/azure.md)
- [Zitadel](./openid/zitadel.md)
- Operations:
- [CLI](./cli.md)
- [Runners](./runners.md)
- [Logs](./logs.md)
- [Notifications](./notifications.md)
- [Email](./notifications/email.md)
- [Telegram](./notifications/telegram.md)
- [Slack](./notifications/slack.md)
- [Teams](./notifications/teams.md)
- [Rocket.Chat](./notifications/rocket.md)
- [DingTalk](./notifications/ding.md)
- [Gotify](./notifications/gotify.md)
- Maintenance:
- [Upgrading](./upgrading.md)
- [Troubleshooting](./troubleshooting.md)
**Plan & Install**

* Installation: [Overview](./installation.md)
* [Package manager](./installation/package-manager.md)
* [Docker](./installation/docker.md)
* [Binary file](./installation/binary-file.md)
* [Kubernetes (Helm chart)](./installation/k8s.md)
* [Cloud](./installation/cloud.md)
* [Manual installation](./installation_manually.md)
* [Snap (deprecated)](./installation/snap.md)

**Configure & Harden**

* Configuration: [Overview](./configuration.md)
* [Configuration file](./configuration/config-file.md)
* [Environment variables](./configuration/env-vars.md)
* [Interactive setup](./configuration/cli.md)
* [Snap configuration](./configuration/snap.md)
* Security: [Overview](./security.md)
* [Database security](./security/database.md)
* [Network security](./security/network.md)
* [NGINX config](./security/nginx.md)
* [Apache config](./security/apache.md)
* [Kerberos](./security/kerberos.md)

**Authenticate & Authorize**

* [LDAP](./ldap.md)
* [OpenID](./openid.md)
* [GitHub](./openid/github.md)
* [Google](./openid/google.md)
* [GitLab](./openid/gitlab.md)
* [Gitea](./openid/gitea.md)
* [Authelia](./openid/authelia.md)
* [Authentik](./openid/authentik.md)
* [Keycloak](./openid/keycloak.md)
* [Okta](./openid/okta.md)
* [Azure](./openid/azure.md)
* [Zitadel](./openid/zitadel.md)

**Integrate & Automate**

* [Pipelines](./cicd.md)
* [API](./api.md)
* [CLI](./cli.md)
* [Users](./cli/users.md)
* [Vaults](./cli/vaults.md)
* [Runners](./cli/runners.md)
* [Database migrations](./cli/migrations.md)
* [Runners](./runners.md)
* [Logs](./logs.md)
* [Notifications](./notifications.md)
* [Email](./notifications/email.md)
* [Telegram](./notifications/telegram.md)
* [Slack](./notifications/slack.md)
* [Teams](./notifications/teams.md)
* [Rocket.Chat](./notifications/rocket.md)
* [DingTalk](./notifications/ding.md)
* [Gotify](./notifications/gotify.md)

**Maintain & Recover**

* [Upgrading](./upgrading.md)
* [Troubleshooting](./troubleshooting.md)
Loading