[Heroku]フラスコアプリケーションの配備



アリスの教育はもうすぐ5ヶ月になります.
3つ目のプロジェクターしか残っていません...ほほほ
履歴書と製品の組み合わせを書いたとき、最初のプロジェクトを仮想マシンに配置しただけで、他の場所に置かなかったことに気づきました.(乾いた)
ハブアドレスを書いて、コードを見て~!面接官の皆さんにそんなことをする勇気がないので、初めて作った個人的なプロジェクトをHerokuにアップロードしたいと思います.
(MacBook Prom 1 proチップベース)
起動前に必要:
1.Herokuアカウントの作成
2.Herokuでcreatenewappでアプリケーションを作成する
3.自分のアカウントに配布するアプリケーションコードがあるはず

1.Heroku CLIのダウンロード


すでにherokuidを作成している場合は、次のリンクを使用してオペレーティングシステムに適した方法でCLIをダウンロードできます.
  • Heroku CLI - download and install
  • 「macos」は端末に次のコマンドを入力します.
    brew tap heroku/brew && brew install heroku
    heroku --versionヘロク確認😉

    2.ログインHeroku


    CLIがインストールされている場合は、配置するフォルダに移動し、HerokuアプリケーションとGirePogeToryを接続する必要があります.
    cd <배포할 폴더> //배포 폴더로 이동하기! 
    heroku git:remote -a <헤로쿠  이름>
    コマンドを入力すると、下の図のようにブラウザウィンドウに入り、Herokuにログインします
    git remoteコマンド検証により、以下のようにgit remoteにherokuが追加されました.

    3. wsgi.pyとProcfileの作成


    wsgiはPythonとWebサーバのインタラクションを支援するゲートウェイです.
    これらを設置してこそ、私たちのプロジェクトのどこでWebサービスを実行しているのかをHerokuに知らせることができるようです.
    googlingのほとんどの人はherokuで腕立て伏せをしているでしょう~の中で書き終わったので、長い時間をかけてかき回して涙を流しました
    (wsgi.pyの位置は私の場合appの下流にあります!)
  • 参考:WSDIとは?
  • # wsgi.py 
    from app import create_app
    
    app = create_app()
    
    if __name__ == "__main__":
        app.run("0.0.0.0", 80)
    Procfileは最上位ディレクトリにあり、ファイル名は大文字で始まる必要があります.
    これは,我々がよく実行するrunserver,flask runの概念に類似したコマンドであると考えられる.
    # Procfile
    # app 안에 wsgi.py 만들어 놨으니까 걔 찾아서 실행해 줄래?
    web: gunicorn app.wsgi:app

    4.ヘロクまで押す


    これからは、普段から襟を使うように、Herokuというリモコンに腕立て伏せをすればいいのです.
    //깃 사용 법에 대한 자세한 설명은 생략한다
    git add
    git commit
    git push heroku

    5. DB migrate


    flask-migrateでmysqlを使います.
    移行ファイルもあなたの襟にアップロードされたのではないでしょうか.
    ではheroku run flask db upgrade・!!!
    直接移行DB...親指👍🏻
  • 参考資料:Run the app with Flask + Heroku
    I'll give the locally generated migrations files to the server and not run db init or db migrate.
    $ heroku run flask db upgrade