Configuration
There are 3 ways to configure Semaphore:
Snap configurations should be used for when Semaphore was installed via Snap.
To see a list of available options, use the following command:
sudo snap get semaphore
You can change each of these configurations. For example if you want to change Semaphore port, use following command:
sudo snap set semaphore port=4444
Don't forget to restart Semaphore after changing a configuration:
sudo snap restart semaphore
Use this option for first time configuration (not working for Semaphore installed via Snap).
semaphore setup
Semaphore uses a
config.json
configuration file with following content:{
"bolt": {
"host": "/home/ubuntu/semaphore.bolt",
},
"mysql": {
"host": "localhost",
"user": "root",
"pass": "*****",
"name": "semaphore",
"options": {}
},
"postgres": {
"host": "localhost",
"user": "postgres",
"pass": "*****",
"name": "semaphore",
"options": {}
},
"dialect": "postgres",
"port": "",
"interface": "",
"tmp_path": "/tmp/semaphore",
"cookie_hash": "*****",
"cookie_encryption": "*****",
"access_key_encryption": "*****",
"email_sender": "",
"email_host": "",
"email_port": "",
"web_host": "",
"ldap_binddn": "",
"ldap_bindpassword": "",
"ldap_server": "",
"ldap_searchdn": "",
"ldap_searchfilter": "",
"ldap_mappings": {
"dn": "",
"mail": "",
"uid": "",
"cn": ""
},
"telegram_chat": "",
"telegram_token": "",
"concurrency_mode": "",
"max_parallel_tasks": 0,
"email_alert": false,
"telegram_alert": false,
"slack_alert": false,
"ldap_enable": false,
"ldap_needtls": false
}
Configuration file | Snap configuration | Description |
---|---|---|
bolt.host | — | Path to the BoltDB database file |
mysql.host | mysql.host | MySQL database host |
mysql.name | mysql.name | MySQL database (schema) name |
mysql.user | mysql.user | MySQL user name |
mysql.pass | mysql.pass | MySQL user's password |
postgres.host | postgres.host | Postgres database host |
postgres.name | postgres.name | Postgres database (schema) name |
postgres.user | postgres.user | Postgres user name |
postgres.pass | postgres.pass | Postgres user's password |
dialect | dialect | Can be mysql , postgres or bolt |
port | port | TCP port on which the web interface will be available. Default: 3000 |
interface | interface | Useful if your server has multiple network interfaces |
tmp_path | — | Path to directory where cloned repositories and generated files are stored. Default: /tmp/semaphore |
access_key_encryption | access-key-encryption | |
web_host | web-host | Can be useful if you want to use Semaphore by the subpath, for example: http://yourdomain.com/semaphore. |
email_sender | email-sender |