added systemd instructions
This commit is contained in:
44
README.md
44
README.md
@@ -70,6 +70,50 @@ services:
|
|||||||
|
|
||||||
then start with `docker-compose up -d`
|
then start with `docker-compose up -d`
|
||||||
|
|
||||||
|
**Installation with systemd** (on ubuntu 18.04)
|
||||||
|
|
||||||
|
Prerequisites:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
Add a repository with the latest Version of golang and install the prerequisites:
|
||||||
|
sudo add-apt-repository ppa:longsleep/golang-backports
|
||||||
|
sudo apt update && sudo apt upgrade
|
||||||
|
sudo apt install build-essential git sqlite libtag1-dev ffmpeg libasound-dev golang
|
||||||
|
```
|
||||||
|
|
||||||
|
Download and compile gonic in the home directory
|
||||||
|
|
||||||
|
```bash
|
||||||
|
go get go.senan.xyz/gonic/cmd/gonic
|
||||||
|
```
|
||||||
|
|
||||||
|
Add a gonic user and create a directory for the server:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo mkdir -p /var/gonic/
|
||||||
|
sudo adduser --disabled-login --gecos "" gonic
|
||||||
|
sudo mv go/bin/gonic /var/gonic/
|
||||||
|
sudo wget https://raw.githubusercontent.com/sentriz/gonic/master/contrib/config -O /var/gonic/config
|
||||||
|
sudo chmod -R 750 /var/gonic/
|
||||||
|
sudo chown -R gonic:gonic /var/gonic/
|
||||||
|
```
|
||||||
|
|
||||||
|
Add your music-path to the config file
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo nano /var/gonic/config
|
||||||
|
```
|
||||||
|
|
||||||
|
Setup systemd service:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo wget https://raw.githubusercontent.com/sentriz/gonic/master/contrib/gonic.service -O /etc/systemd/system/gonic.service
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl enable --now gonic
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## configuration options
|
## configuration options
|
||||||
|
|
||||||
|env var|command line arg|description|
|
|env var|command line arg|description|
|
||||||
|
|||||||
7
contrib/config
Normal file
7
contrib/config
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
music-path
|
||||||
|
cache-path /tmp/gonic_cache
|
||||||
|
db-path /var/gonic/gonic.db
|
||||||
|
jukebox-enabled false
|
||||||
|
listen-addr 127.0.0.1:4747
|
||||||
|
proxy-prefix /gonic
|
||||||
|
scan-interval 0
|
||||||
28
contrib/gonic.service
Normal file
28
contrib/gonic.service
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Gonic service
|
||||||
|
ConditionPathExists=/var/gonic/gonic
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=gonic
|
||||||
|
Group=gonic
|
||||||
|
LimitNOFILE=1024
|
||||||
|
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=10
|
||||||
|
|
||||||
|
WorkingDirectory=/var/gonic/
|
||||||
|
ExecStart=/var/gonic/gonic -config-path /var/gonic/config
|
||||||
|
|
||||||
|
# make sure log directory exists and owned by syslog
|
||||||
|
PermissionsStartOnly=true
|
||||||
|
ExecStartPre=/bin/mkdir -p /var/log/gonic
|
||||||
|
ExecStartPre=/bin/chown syslog:adm /var/log/gonic
|
||||||
|
ExecStartPre=/bin/chmod 755 /var/log/gonic
|
||||||
|
StandardOutput=syslog
|
||||||
|
StandardError=syslog
|
||||||
|
SyslogIdentifier=sleepservice
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
Reference in New Issue
Block a user