Skip to main content

Admin Guide

This section is for administrators who install and operate Semaphore for other people. Everything here needs access the server itself: the configuration file, environment variables, command line, or the machine Semaphore runs on. Work done inside a project through the web interface is covered in the User Guide.

Semaphore is a single Go binary with a web interface and a REST API. It stores its data in SQLite, MySQL, or PostgreSQL, keeps credentials encrypted, and runs tasks either on the server itself or on separate runners. A working installation therefore comes down to four decisions: how to install it, where the database lives, how users sign in, and where tasks execute.

Set up

Everything you configure before or around starting the server.

PageWhat it covers
InstallationPackage manager, Docker, binary, Kubernetes, and a manual setup.
ConfigurationThe config.json file, environment variables, and every supported option.
UpgradingMoving to a newer release and what to check first.
Reverse proxyServing Semaphore behind nginx, Apache, or Caddy, with TLS.
SecurityPassword hashing, secret encryption, network hardening, and task JWTs.
AuthenticationLocal accounts and two-factor, LDAP and Active Directory, and single sign-on with twelve OpenID Connect providers.
RunnersExecuting tasks on machines other than the server.
High availabilityRunning several Semaphore nodes against one database.

Operate

Everything you do on a server that is already running.

PageWhat it covers
CLIManaging users, projects, vaults, runners, and database migrations from the shell.
APIAuthenticating with a token and driving Semaphore programmatically.
CI/CD integrationStarting Semaphore tasks from an external pipeline.
LogsServer logs, task logs, and forwarding them elsewhere.
MetricsThe Prometheus endpoint and the metrics it exposes.
NotificationsDelivery channels for alerts: e-mail, Telegram, Slack, and others.
LicenseActivating a Pro or Enterprise subscription.

Where to start

If you are installing Semaphore for the first time, read Installation and pick one method, then Configuration to learn how options are supplied. Put the server behind a reverse proxy with TLS before anyone else uses it.

To see what a paid subscription adds, see Editions.