RemoteDebuggerConsole as a service under systemd

I don’t know if anyone else will find this useful but I have a 24/7 Raspberry Pi development server that I test console and web applications on. I got tired of having to start up a terminal to launch the Xojo Console Debugger every time I needed it. I really wanted the console debugger to always be running. I tried to use my old standby: crontab with an @reboot entry but that failed because the network wasn’t up and running when the console debugger was launched by crontab.

So, I looked for some info about how to run the debugger as a service under systemd. Now when my Raspberry Pi development server reboots it automatically launches the console debugger.

I created a “xojo_console_debugger.service” file and placed it in the “/lib/systemd/system” folder. The contents of the file look like this:

[Unit]
Description=Xojo Console Debugger
After=network-online.target

[Service]
ExecStart=/root/RemoteDebuggerConsole/RemoteDebuggerConsole
WorkingDirectory=/root/RemoteDebuggerConsole/
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

To make the new service run at every boot up, issue this command:

systemctl enable xojo_console_debugger.service

Then I rebooted the Raspberry Pi. When the Raspberry Pi came up again the console debugger was running! To control or check the status of the console debugger service use these commands:

service xojo_console_debugger.service status
service xojo_console_debugger.service start
service xojo_console_debugger.service stop

This was my first attempt ever at using systemd. If I discover any issues with this I’ll post a follow up. But for now this seems to be doing exactly what I’d hoped for.

-Wes