Tôi tin rằng điều này sẽ đơn giản nhưng tôi không thể làm cho nó hoạt động đúng.
Đây là những lệnh tôi có thể chạy trên dòng lệnh:
cd /home/debian/ap
# Start a virtualenv
source venv-ap/bin/activate
# This needs to happen inside the virtualenv and takes ~20 seconds
crossbar start
# Outside the virtualenv, perhaps in a different command line window
python3 /home/debian/myscript.py
Các lệnh này phải được thực hiện theo thứ tự này. Do virtualenv, không thể thực thi cho thanh ngang và tập lệnh python riêng biệt sau đó, tôi đã không thể tìm ra cách tốt nhất để làm cho nó hoạt động. Công việc hiện tại của tôi đang tiến hành:
[Unit]
Description=Start CB
After=network.target
[Service]
Type=simple
User=debian
ExecStartPre=source /home/debian/ap/venv-ap/bin/activate
ExecStart=cd /home/debian/ap/ && crossbar start
Restart=always
[Install]
WantedBy=multi-user.target