Cannot run python program as a service in ubuntu 18.04

1.3k views Asked by At

I am trying to run a python program as a background service in ubuntu 18.04. It imports zerorpc module which I have already installed with pip3 and tested with python command on terminal. But it shows status: failed when I try to run the program as dummy.service. Below is my service file:

[Unit]
Description=Dummy Service
[Service]
Type=Simple
ExecStart=/usr/bin/python3 /usr/bin/server.py
[Install]
WantedBy=multi-user.target

Below is the status of serice after enabling it:

dummy.service - Dummy Service
Loaded: loaded (/lib/systemd/system/dummy.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-11-26 16:18:57 IST; 5s ago 

Process: 4101 ExecStart=/usr/bin/python2 /usr/bin/server.py (code=exited, status=1/FAILURE)
Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: Started Dummy Service.

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]: Traceback (most recent call last):

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]:   File "/usr/bin/server.py", line 1, in <module>

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]:     import zerorpc

Nov 26 16:18:57 vipul-HP-Notebook python2[4101]: ImportError: No module named zerorpc

Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: dummy.service: Main process exited, code=exited,      status=1/FAILURE

Nov 26 16:18:57 vipul-HP-Notebook systemd[1]: dummy.service: Failed with result 'exit-code'.

I don't know why this is happening. Please help!!

1

There are 1 answers

0
Vipul Tyagi On BEST ANSWER

If your daemon service is giving error in importing module, the probably you have installed it with pip only. Installing module this way makes it available to a specific user, if you want to make it available globally, you would have to install it with admin privileges like this:

sudo -H pip3 install module_name