Skip to main content

Install Semaphore UI on Debian

The Semaphore UI Project documentation semaphoreui/semaphore

Installation

GitHub_Releases

sudo wget -P /usr/local/src/ https://github.com/semaphoreui/semaphore/releases/download/v2.17.33/semaphore_2.17.33_linux_amd64.deb
sudo dpkg -i /usr/local/src/semaphore_2.17.33_linux_amd64.deb
export 
sudo useradd -d /nonexistent -s /usr/sbin/nologin --no-create-home --system semaphore
sudo mkdir -p /var/lib/semaphore
sudo chown semaphore:semaphore /var/lib/semaphore
sudo chmod 0750 semaphore /var/lib/semaphore
sudo -u semaphore semaphore setup
sudo chmod 0600 /var/lib/semaphore/config.json
sudo chmod 0600 /var/lib/semaphore/database.sqlite
sudo cat > /etc/systemd/system/semaphore.service <<EOF
[Unit]
Description=Semaphore Ansible
Documentation=https://github.com/semaphoreui/semaphore
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=semaphore
Group=semaphore
ExecReload=/bin/kill -HUP $MAINPID
ExecStart=/usr/bin/semaphore server --config=/var/lib/semaphore/config.json
SyslogIdentifier=semaphore
Restart=always
RestartSec=10s

[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl start semaphore