どうも、ゆうです!
最近、プログラミングに激ハマり中です。
どうにか、費用をかけずにクラウド上とかで実行する方法を探したところ、herokuというプラットフォームを見つけました!
前編はこちら
ざっくり流れ
PC上(VSCode)のフォルダをリモートでGitHubに同期して、GitHubとHerokuも同期して、Heroku上で動かし、PCの電源が入っていなくても、自動で定期実行させる流れです。

環境
Mac OS Catalina 10.15.7 64bit 2.5 GHz デュアルコアIntel Core i5
Python 3.9.5(vscodeで作成)
ローカルとGitHubを繋ぐ
作成したGitHubのリポジトリにローカルのフォルダを紐付けます。
プログラムを入れたフォルダに移動
(私の場合は「デスクトップ > python > heroku > test」)
ターミナルで次を記述する。
cd python
cd Heroku
cd test
.gitをインストール
ターミナル で次を記述する。元々ある場合は、初期化されるらしいです。
git init
隠しフォルダなので、インストールされたかを確認
Macで隠しフォルダ・ファイルを表示させる
Finderを開き、「command + shift + .」を同時に押す
と、ニョキッと出てきます。

リモートリポジトリURLを設定
① GitHubの作成したリポジトリ画面から、リモートリポジトリURLをコピー

② ターミナルで次を記述する。
git remote add origin リモートリポジトリURL
③ 設定できているか確認
ターミナルで次を記述する。
git remote -v
git config user.name
git config user.email
下のように、それぞれが返ってきたらOK

ローカルフォルダとリモートリポジトリを繋ぐ
「プル→コミット→プッシュ」で連携するらしいのですが、「プル = フェッチ + マージ」らしいので、まずはフェッチとマージをします。
言葉の意味はわかりません(笑)
プルする。
① ターミナルで次のコマンドを記述して、フェッチする。
git fetch
② ターミナルで次のコマンドを記述して、マージする。
git merge origin/main
コミットする。
① VSCodeのSouce Controlを開く

② 入力欄に、タグとなるコメントを入力して、Command+Enter(もしくは入力欄右上のチェックマークアイコンをクリック)

プッシュする。
左下の雲と上矢印のアイコンをクリックする。

確認
① GitHubを更新したら、元々ローカルフォルダ内にしかなかったpythonデータが表示されればOK

Herokuを設定
アプリを作成する
① 「New」をクリックして、「Create new app」をクリックする。

② 好きなアプリ名を入力し、「Create app」をクリック
(私は、アプリ名を「test-heroku」にします。)

Build Packを挿入
ターミナルで次を記述して、必要なパッケージを設定します。
・Python
heroku buildpacks:add heroku/python --app Herokuのアプリ名(私の場合は「test-heroku」
・Chrome
heroku buildpacks:add https://github.com/heroku/heroku-buildpack-google-chrome --app Herokuのアプリ名(私の場合は「test-heroku」)
・Chrome Driver
heroku buildpacks:add https://github.com/heroku/heroku-buildpack-chromedriver --app Herokuのアプリ名(私の場合は「test-heroku」)
Build Packを直接挿入
Herokuの「Settings」内の「Buildpacks」の「Add Buildpack」をクリックし、次をぞれぞれ入力して、「Save changes」をクリック
https://github.com/heroku/heroku-buildpack-google-chrome
https://github.com/heroku/heroku-buildpack-chromedriver

タイムゾーンを日本に設定
・タイムゾーン
heroku config:add TZ=Asia/Tokyo --app Herokuのアプリ名(私の場合は「test-heroku」)
できているか確認
① Herokuの「Settings」内の「Config Varlables」が入力されていればOK

② ターミナルに次を記述して、日本時間(JST)で出ればOK
heroku run bash --app Herokuのアプリ名(私の場合は「test-heroku」)
date

確認できたら、ターミナルに次の記述をして、退出する。
exit
GitHubとHerokuを繋ぐ(デプロイ)
GitHubとHerokuを繋ぐことをDeploy(デプロイ)と言うらしいです。
デプロイの設定
① Herokuの「Deplory」をクリック
② 「Deployment method」から「GitHub」をクリック
③ 「Connect to GitHub」から、GitHubのリモートリトジポリを検索
④ 作成したリモートリトジポリを選択して接続(connect)
(私は、「test_repository」)
「GitHub」の下が「Connected」になっていれば、接続完了

デプロイ
① 「Manual deploy」で、ローカルとGitHubを繋いだ時のbranchを選択して「Deploy Branch」をクリック
② デプロイが完了すると、「View」が表示されます。
HerokuはWebアプリ開発のためのプラットフォームですが、今回は特に公開しないので「View」を押しても特に何もありません。

実行してみる
ターミナルに次を記述をする。
heroku run --app Herokuのアプリ名(私の場合は「test-heroku」)
実行結果を見る
ターミナルに次を記述をする。
heroku logs --app Herokuのアプリ名(私の場合は「test-heroku」)
やっと、実行できました、、!!
コメント