備忘録:herokuにデプロイする手順

プログラム

いつも手順を忘れてサイトを漁ってしまうので忘れんように書いとこう。

環境:Windows10Home

参考

できればCLIで通して作ったほうがよさそうだが苦手なので先にherokuのGUIにてアプリの作成から設定を終わらす。

使うアドオンとか環境変数とか入れとく。

  1. テスト用のフォルダつくる
  2. デプロイしたいPythonファイルを配置
  3. 仮想環境を作る
  4. pipで必要なモジュールをインストール
  5. テストする
  6. 動いたらpip freeze でrequirements.txtを作成
  7. runtime.txtも作成
  8. gitでデプロイ

テスト用のフォルダを作りファイルをコピー

任意の場所に作成し必要なファイルを配置する

仮想環境を作る

仮想環境

田ボタン + R で「cmd」と入力する

コマンドプロンプトが立ち上がる

> cd [1で作ったフォルダ]

cdコマンドで移動

> python -m venv [仮想環境名]

仮想環境を作る

> [仮想環境名]\Scripts\activate

アクティベート

pipで必要なモジュールをインストールしてテスト

(仮想環境名) pip install ●●

遭遇エラー①

requirements.txtを作成

(仮想環境名)pip freeze > requirements.txt
async-generator==1.10
attrs==21.4.0
beautifulsoup4==4.10.0
bs4==0.0.1
cachetools==5.0.0
certifi==2021.10.8
cffi==1.15.0
charset-normalizer==2.0.12
chromedriver-binary==100.0.4896.20.0
cryptography==36.0.1
discordwebhook==1.0.3
fake-useragent==0.1.11
google-auth==2.6.0
google-auth-oauthlib==0.5.0
gspread==5.2.0
gspread-dataframe==3.2.2
h11==0.13.0
httplib2==0.20.4
idna==3.3
lxml==4.8.0
numpy==1.22.3
oauth2client==4.1.3
oauthlib==3.2.0
outcome==1.1.0
pandas==1.4.1
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycparser==2.21
pyOpenSSL==22.0.0
pyparsing==3.0.7
PySocks==1.7.1
python-dateutil==2.8.2
pytz==2021.3
requests==2.27.1
requests-oauthlib==1.3.1
rsa==4.8
selenium==4.1.3
six==1.16.0
sniffio==1.2.0
sortedcontainers==2.4.0
soupsieve==2.3.1
trio==0.20.0
trio-websocket==0.9.2
tweepy==4.6.0
urllib3==1.26.8
wsproto==1.1.0

こんなかんじのファイルができる

バージョンによってサポートされてないメソッドもあるので都度確認変更を

仮想環境を抜ける場合

(仮想環境名) deactivate

runtime.txt

python-3.8.12

gitでデプロイ

初回デプロイのみ

> git init

イニシャライズ(初期化)

> heroku git:remote -a (アプリ名)

リモートリポジトリ設定

> git add .

. は全てという意味

全てのファイルを追加する

2回目以降

> git add (変更したファイル)
> git commit -m "コメント"
> git push heroku master

結構時間がかかるのでコーヒーを飲んで待ちます

herokuで動くかどうかテスト

> heroku run python (pythonの実行ファイル.py)

スケジューラに登録

Run Commandのところに実行したいコマンドを書く

10分毎、1時間ごと、1日置きの●●時に実行など設定ができる

1日置きの時間を指定する場合UTCのみしか設定できないので時差を考慮すること

コメント

タイトルとURLをコピーしました