Hur man kör scl-aktivera rh-python36 i Linux crontab

Eftersom scl aktiverar rh-python36 skapa ny virtuell miljö för Python, inom den här miljön, kan du använda din installerade Python 3.6 men den virtuella miljön tillämpas inte automatiskt när du kör i en crontab.

Så för att använda Python 3.6 i Linux crontab måste du köra dina Python-filer i aktiverad ny virtuell miljö.

Min run.sh-fil:

#!/bin/bash
now=`date`
echo "[$now]Running script now ..."
scl enable rh-python36 "cd /opt/wdir/ && pipenv run python main.py" >> /var/log/logrun.txt
echo "[$now]All done now" 

och min crontab:

* 7 * * * /opt/wdir/run.sh > /var/log/logrun.txt 

Ett annat sätt är att ställa in scl direkt på crontab:

* 7 * * *  scl enable rh-python36 "cd /opt/wdir/ && pipenv run python main.py" > /var/log/logrun.txt 

Mer om Linux crontab here.

Happy working!

Related:  Hur du stänger av SELinux på Centos 7 permanent