In the following text an example service named vultrdata
is used for illustrative purposes.
A service is defined in a file named like /etc/systemd/system/vultrdata.service
. Unit files have a format like in this example:
[Unit]
Description=Vultr Instance Metadata Service
After=network.target
[Service]
User=vultrdata
WorkingDirectory=/opt/vultrdata
Restart=always
Environment=API_KEY=____________________________________
ExecStart=/opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
[Install]
WantedBy=multi-user.target
After creating the file in the /etc/systemd/system
directory, issue this command to register it:
$ sudo systemctl daemon-reload
Then you can check the status:
$ sudo systemctl status vultrdata
● vultrdata.service - Vultr Instance Data Service
Loaded: loaded (/etc/systemd/system/vultrdata.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2020-04-05 19:35:56 UTC; 1 weeks 0 days ago
Main PID: 19694 (vultrdata)
Tasks: 16 (limit: 4661)
CGroup: /system.slice/vultrdata.service
├─19496 /opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
└─19509 /opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
Or start, stop, restart it:
$ sudo systemctl start vultrdata.service
$ sudo systemctl stop vultrdata.service
$ sudo systemctl restart vultrdata.service
You can enable or disable starting the unit/service on system startup:
$ sudo systemctl enable vultrdata
$ sudo systemctl disable vultrdata
You can see/tail all systemd logs, or just for your service (unit):
$ sudo journalctl -f
$ sudo journalctl -f -u vultrdata