仮想環境でパッケージを含むPythonスクリプトcronジョブをスケジュールする方法は?

仮想環境でパッケージを含むPythonスクリプトcronジョブをスケジュールする方法は?

必要なすべてのパッケージをインストールした環境があります。 crontabに入れたいスクリプトがあります。私がやったことですが、crontabが私のスクリプトを実行すると問題があります。もちろん、パッケージは私の環境にしかないので、欠落しているパッケージはスクリプトを実行しません。

したがって、最初の解決策はホストにすべてのパッケージをインストールすることです(しかしそれをしたくない)。

私のcrontabは次のようになります。

* * * * * /path/script.py

script.pyに#!/usr/bin/python3.6

どういうわけか私の環境と必要なすべてのパッケージを私のcrontabに含める必要があります。

どんなアイデアがありますか?

ベストアンサー1

私はスクリプトを作成しましたcron_script.sh

#!/bin/bash
source /path/to/env/bin/activate
cd /path/to/script/
python3.6 script.py
deactivate

私のスケジュール:

* * * * * /path/to/cron_script.sh

おすすめ記事