1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Herokuについて

Last updated at Posted at 2024-10-16

Herokuとは?概要と使い方に関する記事
Herokuは、Salesforceが提供するクラウドプラットフォームで、Herokuを使うことで、インフラの管理に煩わされることなく、WebアプリケーションやAPIのデプロイ、運用、スケーリングが簡単に行えます。

1. Herokuの特徴と主な機能

1 Herokuの特徴
シンプルなデプロイ:Gitコマンドで簡単にアプリケーションをHerokuにデプロイ可能。
多言語対応:Node.js、Python、Ruby、Java、Go、PHPなど、さまざまなプログラミング言語をサポート。
スケーラビリティ:負荷に応じてアプリケーションをスケールアップ・ダウンできます。
アドオンの利用:データベース(PostgreSQLやRedis)、モニタリングツール、認証機能など、様々なアドオンを追加可能。
無料プランあり:学習用やプロトタイプの構築に使える無料プランを提供。

Heroku1.2 主な機能
Gitによるデプロイ:git pushを使ったシンプルなデプロイ方法。
CI/CDのサポート:継続的インテグレーション(CI)とデプロイの自動化が可能。
Heroku CLI:コマンドラインからHerokuの操作を行うツール。
アドオンマーケットプレイス:Redis、PostgreSQL、Papertrailなど、便利なアドオンを簡単に追加可能。

2. Herokuの導入とアプリケーションのデプロイ

Herokuを使ったアプリケーションのデプロイは非常に簡単です。以下の手順に沿って進めてみましょう。

2.1 Herokuアカウントの作成
Heroku公式サイト にアクセスし、無料のアカウントを作成します。
メール認証を完了し、アカウントの設定を行います。

2.2 Heroku CLIのインストール
Heroku CLIは、コマンドラインからHerokuを操作するためのツールです。以下のコマンドでインストールします。

Windows/Mac: Heroku CLI公式ページからインストーラをダウンロードし、インストール。
Ubuntu/Debian:

curl https://cli-assets.heroku.com/install.sh | sh

2.3 Herokuへのログイン
インストール後、以下のコマンドを実行し、Herokuにログインします。

heroku login

ブラウザが開き、ログインを求められます。ログインが成功すると、CLIでHerokuを操作できるようになります。

2.4 Herokuアプリの作成とデプロイ

  1. Gitリポジトリの初期化
    プロジェクトフォルダに移動し、Gitリポジトリを初期化します。
git init

2. Herokuアプリの作成
Heroku上に新しいアプリを作成します。

heroku create アプリ名

これで、Heroku上にアプリケーションの環境が準備されます。URLが発行され、ブラウザでアクセスできるようになります。

3. アプリのデプロイ
アプリケーションをHerokuにデプロイするためには、git add と git push を使います。

git add .
git commit -m "Initial commit"
git push heroku main

4. アプリケーションの起動確認
デプロイが成功したら、以下のコマンドでアプリのURLを表示します。

heroku open

これで、Herokuにデプロイされたアプリケーションがブラウザで確認できます。

3. Herokuでのデータベース利用

Herokuでは、PostgreSQLが標準でサポートされており、アドオンとして簡単に追加できます。

3.1 PostgreSQLの追加
以下のコマンドで、PostgreSQLアドオンをアプリケーションに追加します。

heroku addons:create heroku-postgresql:hobby-dev

3.2 データベースの接続情報取得
以下のコマンドで、データベースの接続情報を取得します。

heroku config:get DATABASE_URL

3.3 マイグレーションの実行
アプリケーションのモデルをデータベースに反映するため、マイグレーションを実行します。

heroku run python manage.py migrate

4. Herokuのアドオンと拡張機能

Herokuは、多くのアドオンをサポートしており、アプリの機能を簡単に拡張できます。

4.1 代表的なアドオン
Heroku Redis:Redisキャッシュの導入
Papertrail:ログのモニタリング
SendGrid:メール送信サービス
New Relic:パフォーマンスモニタリング

4.2 アドオンの管理
アドオンを確認するには、以下のコマンドを使用します。

heroku addons

アドオンの削除には、以下のコマンドを使います。

heroku addons:destroy アドオン名

5. Herokuのスケーリングと運用

5.1 アプリのスケーリング
Herokuでは、アプリのプロセス(Dyno)をスケールアップ・ダウンすることができます。

スケールアップの例:

heroku ps:scale web=2

このコマンドは、Web Dynoを2つにスケールアップします。

5.2 ログの確認
アプリの実行状況やエラーを確認するには、以下のコマンドでログを取得します。

heroku logs --tail

6. HerokuのCI/CDパイプラインの設定

Herokuでは、GitHubと連携してCI/CDパイプラインを構築することができます。

6.1 GitHubとの連携
HerokuアプリとGitHubリポジトリを連携するには、以下の手順を実行します。

Herokuダッシュボードにアクセス。
アプリの「Deploy」タブを開き、GitHubとの連携を設定。
自動デプロイの設定を有効にする。

6.2 自動デプロイの設定
GitHubのブランチに変更が加わるたびに、Herokuが自動的に最新のバージョンをデプロイするように設定できます。

7. まとめ

Herokuは、アプリケーションのデプロイや運用を簡単にする強力なPaaSプラットフォームです。特に、開発者がインフラ管理に時間を割くことなく、アプリケーションの開発に集中できる点が大きな魅力です。

Herokuの主な特徴として、簡単なデプロイ、スケーラビリティ、豊富なアドオンの利用が挙げられます。また、無料プランも提供されているため、プロトタイプ開発や学習目的にも適しています。

これからアプリケーションをクラウドに展開したいと考えている方は、Herokuをぜひ活用してみてください。
毎日更新していますので、@y-t0910をフォローしていただけると嬉しいです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?