ホームページ > テクノロジー周辺機器 > IT業界 > Herokuへの展開:はじめに - SitePoint

Herokuへの展開:はじめに - SitePoint

Jennifer Aniston
リリース: 2025-02-18 09:19:10
オリジナル
728 人が閲覧しました

Deploying to Heroku: An introduction — SitePoint

キーハイライト:

  • Herokuは、マネージドサーバープラットフォームでWebアプリケーションの展開を簡素化します。 サーバーリソースの割り当てを自動化し、git pushを介して簡単な展開を可能にします。 トラフィックの低いアプリケーションでは、無料のティアが利用できます。
  • Herokuは、プロジェクトを管理するために、プロジェクトの依存管理、構築、および実行のためのインストラクション(インストラクション)を使用しています。 多数の言語をサポートし、プロジェクトタイプを自動的に検出できます。サードパーティのビルドパックは、サポートされていない言語を処理するか、ツールをビルドします
  • は、Herokuが実行するものを決定します。 Procfileを構成してリポジトリに追加した後、Procfileを使用して展開が達成されます。 追加のコマンドは、永続的な構成、スケールプロセス、およびロールバックの処理を管理します。 git push
彼の貴重なピアレビューの貢献をしてくれたマシュー・ウィルキンに感謝します。

このガイドでは、HerokuとそのWebアプリケーションの展開プロセスについて説明しています。

Herokuは、迅速なWebアプリケーションの展開のための管理されたプラットフォームです。 サーバーリソースを自動的に提供し、展開をDeploying to Heroku: An introduction — SitePoint操作に簡素化します。 無料の層では、簡単で費用のかからない初期展開が可能になります(交通制限の対象)。

専用のDevOpsチームと比較して費用対効果が高いですが、交通量の多いアプリケーションはかなりの費用を負担する可能性があります(各Dynoは毎月25ドルで、データベースの追加費用が増加します)。

git push開始する前に:

このガイドに従うには、

を確認してください

Heroku Toolbelt(コマンドラインユーティリティ) gitインストールと構成。 (GITに精通していることが推奨されます。)

展開できるプロジェクトがある場合は、次のセクションをスキップして「Herokuプロジェクトの作成」に進みます。
  1. プロジェクトの例:
  2. この例では、Python Flaskアプリケーションを使用しています。 他のプロジェクトにプロセスを適応させることができます。 独自のプロジェクトがある場合は、このセクションをスキップしてください Project Directory(例えば、
)を作成します

次のようにファイルに入力します:

myproject

<code>/myproject
  /templates
    index.html
  app.py
  requirements.txt</code>
ログイン後にコピー
ログイン後にコピー

app.py依存関係をインストール:

import os
import flask

app = flask.Flask(__name__)

@app.route("/")
def index():
    return flask.render_template("index.html")

if __name__ == "__main__":
    app.run(port=os.environ.get('PORT', '5000'))
ログイン後にコピー

templates/index.html

<!DOCTYPE html>
<html>
  <head>
    <title>My example project</title>
  </head>
  <body>
    <h1>This is my project.</h1>
  </body>
</html>
ログイン後にコピー
Herokuプロジェクトの作成:

requirements.txt

  1. 端末のプロジェクトディレクトリに移動します。
  2. gitを初期化します:git init
  3. Herokuアプリを作成します:heroku create(またはheroku create myproject名前を指定します)。 これにより、名前、URL、およびGITリポジトリが生成され、Herokuリモートリポジトリの初期化があります。

buildpacksの理解:

HerokuはBuildPacksを使用してプロジェクトを管理します。 これらは、依存関係の検索、構築、および実行に関する指示を提供します。 いくつかの言語(node.js、Ruby、Java、Clojure、Scala、PHP、Python、GO)には公式のBuildPackが存在します。 Herokuは、規則に基づいてプロジェクトの種類を自動的に検出します(例:Pythonの場合

)。 サードパーティのビルドパックは、他の言語をサポートするか、ツールをビルドします requirements.txt

procfileの構成:

Herokuは

を使用して実行するものを決定します。 簡単なWebアプリケーションの場合は、次のコンテンツでA

を追加します。 Procfile Procfile(パフォーマンスを改善するには、Gunicorn:

に追加し、>で
<code>/myproject
  /templates
    index.html
  app.py
  requirements.txt</code>
ログイン後にコピー
ログイン後にコピー
を使用してください。)

を使用してください。 requirements.txtweb: gunicorn app:app -b 0.0.0.0:$PORTプロジェクトの展開:Procfile

追加してコミットします:

  1. Herokuへの展開:Procfilegit add Procfile && git commit -m "Added Procfile"
  2. git push heroku master展開が完了!

アプリケーションを展開する必要があります。 Herokuが提供するURLを介してアクセスします 追加のherokuコマンド:

:永続的な構成値を設定します。

    :Webプロセスを拡大します(コストの影響により慎重に使用してください)。
  • heroku config:set MY_ENV_VARIABLE=some_value:アプリリリースをリストします。
  • heroku ps:scale web=5:特定のリリースに戻ってロールバックします。
  • heroku releases:最新リリースを元に戻します。
  • heroku rollback <release_identifier></release_identifier>これらは、Heroku Dashboardを介して管理することもできます
  • よくある質問(FAQS):heroku rollback
  • (このセクションは、すでにかなり長いため、応答を簡潔に保つために省略されています。必要に応じて、元のFAQを簡単に再統合できます。 )

以上がHerokuへの展開:はじめに - SitePointの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート