2017-01-25 3 views
0

私はファイル "main.py"を持っていて、10分間隔で実行したいだけですが、私のコンピュータでは実行しません。ファイルが使用する唯一の外部ライブラリは、mysql.connectorとpipリクエストです。私が試した特定のスケジュールでクラウドでホストされている単純なpythonスクリプトを実行するにはどうすればよいですか?

もの:

PythonAnywhereは - 自由層があまりにも

AWSラムダ(外部DBに接続する必要がある)制限される - だけのPython 2.7をサポートし、私のコードを変換しますが、まだ問題がありました

Google Cloud Platform + Heroku - アプリケーションのデプロイメントに関するチュートリアルのみが見つかりますが、これは私が探していることを行うことができると思いますが、どのように把握できないのでしょうか。

ありがとうございます!

答えて

0

私は以前にunix.stackexchangeで質問したthisの質問/回答から始めます。私はAWS redhatインストールに行って無料で使用できました。

VMを決定したら、任意のSSHクライアントを使用してサーバーにSSHを追加し、Pythonスクリプトをアップロードできます。個人的な好みはthisアプリケーションです。

サーバー上でPythonバージョンを更新する必要がある場合は、必要なPython RPMをインストールすることでこれを行うことができます。速いgoogleはyum [またはあなたが使用しているRPM管理システム]を必要なRPMのためにリポジトリに戻す必要があります。

必要なPythonのバージョンをインストールしたら、ジョブをスケジュールするために使用できる 'crontab'を調べることをお勧めします。あなたはあなたのスクリプトを呼び出すcronジョブを10分ごとに実行するように設定することができます。

AWS Lambdasupports Pythonのための完全なユースケースのようにこれが聞こえるのcrontab

0

を使用する方法の詳細についてはthisサイトを参照してください。 Scheduled Eventsを使用してスケジュールでラムダを呼び出すことができます。

私はあなたがラムダを試したことが分かりました。それはあなたのためにうまくいかなかったことが分かります。 EC2インスタンスを起動し、userdataを使用して、インスタンスの起動時にcronをスケジュールすることもできます。

別のオプションは、あなたのスケジュールを定義するcron.ymlを持つElastic Beanstalk workerです。 Elastic BeanstalkはPython 3.4をサポートしています。

関連する問題