OCI Free Tier Always FreeサービスでのDockerコンテナでのWordPressサイトのホストについて学習します

Oracle Cloud Free Tierを使用すると、多数のAlways Freeサービスや、30日間の無料トライアル(300米ドル分の無料クレジット付き)を含むOracle Cloudアカウントを作成し、資格のあるすべてのOracle Cloud Infrastructure (OCI)サービスで使用できます。Always Freeサービスは、無期限に使用できます。無料トライアル・サービスは、300米ドルの無料クレジットがなくなったか、30日間のトライアル期間が経過するまで(いずれか早い方)使用できます。

WordPressは、無料のオープンソースWebサイト作成プラットフォームであり、PHPに記述されたコンテンツ管理システムであり、任意のクラウドにデプロイできます。WordPressのインストールには、通常、Apache、PHP 7、MySQLのインストールが含まれます。このインストールには時間がかかる場合があります。かわりに、このソリューション・プレイブックで説明するように、Always Freeサービスを使用してOCI Free TierのDockerコンテナにWordPressを簡単にインストールできます。

OCI Free TierでWordPressをホストするメリット
  • 無償のコスト

    OCI Free Tier Always Freeサービスを使用して、WordPressサイトを無料でホストできます。

  • 容易なインストール

    DockerでWordPressを簡単にインストールして保守します。

  • HTTPSを使用するカスタムドメイン

    独自のドメインを追加し、SSL証明書でアプリケーションを保護します。

開始する前に

このソリューション・プレイブックのインストールおよび構成ステップを実装する前に、次の前提条件を確認して完了します。

ノート:

OCIアカウントが必要であり、OCIでのVCNおよびコンピュート・インスタンスの作成に精通している必要があります。OCI Cloud Free Tierに移動します:
  • 新しいアカウントにサインアップする場合は、「無料で使用開始」をクリックします。
  • OCIアカウントがすでにある場合は、「Oracle Cloudにサインイン」をクリックします。
  1. VCNの作成: Oracle Cloudコンソールのナビゲーション・メニューを開き、「ネットワーキング」「Virtual Cloud Networks」の順にクリックし、「VCNウィザードの起動」をクリックします。
    VCNの作成の詳細は、VCNの作成を参照してください。
  2. Always Freeの対象のコンピュートVMの作成: Oracle Cloudコンソールのナビゲーション・メニューを開き、「コンピュート」「インスタンス」の順にクリックして、AmpereのOracle Linux 8コンピュート・インスタンス(VM.Standard.A1.Flex Always Freeシェイプ)を作成します。
    コンピュートVMの作成の詳細は、Linuxインスタンスの起動を参照してください。
  3. VMのセキュリティ・リストでのイングレス・ルールの設定: 実行中のコンテナに必要なポートを開きます。パブリック・インターネットからポート80およびポート443へのすべてのインターネット・トラフィックを有効にします。
    既存のセキュリティ・リストへの新しいイングレス・ルールの追加の詳細は、セキュリティ・リストの作成を参照してください。
  4. ドメインの設定: DNSレコードを更新し、認証局からSSL証明書を取得できる必要があります。

アーキテクチャ

このアーキテクチャは、OCI Free TierのDockerコンテナでWordPressサイトをホストし、ロード・バランサを使用してカスタム・ドメインを追加する方法を示しています。

  • Always Free Compute VMは、VCNのパブリック・サブネット内に作成されます。VMのセキュリティ・リストには、(HTTPSトラフィックを許可するために)ポート80および443を開くように設定されたイングレス・ルールがあります。
  • WordPressとデータベース(MySQL Database)をインストールするために、Always Free Compute VM内に2つのDockerコンテナが作成されます。
  • ロード・バランサは、パブリック・インターネットからの受信トラフィックを受け入れるために作成されます。認証局のドメインのSSL証明書がロード・バランサにインストールされます。
  • ドメインのDNS Aレコードは、OCIでホストされているWordPressサイトにアクセスできるように、ロード・バランサのIPアドレスに更新されます。

次の図は、このリファレンス・アーキテクチャを示しています。



oci- wp- docker- alwaysfree- oracle.zip

このアーキテクチャでは、次のコンポーネントがサポートされます。

  • 仮想クラウド・ネットワーク(VCN)

    VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準のプライベートIPアドレス領域内にあるCIDRブロックを使用します。

    VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準のプライベートIPアドレス領域内にあるCIDRブロックを使用します。

    プライベート接続を設定する他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。

    VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。

    サブネットを設計する際は、トラフィック・フローおよびセキュリティ要件を考慮してください。特定の層またはロール内のすべてのリソースを、セキュリティ境界として機能する同じサブネットにアタッチします。

    リージョナル・サブネットを使用します。

  • セキュリティ・リスト

    セキュリティ・リストを使用して、サブネット全体に適用されるイングレスおよびエグレス・ルールを定義します。

  • ロード・バランサの帯域幅

    ロード・バランサの作成時に、固定帯域幅を提供する事前定義済のシェイプを選択するか、帯域幅範囲を設定するカスタム(柔軟性のある)シェイプを指定して、トラフィック・パターンに基づいて帯域幅を自動的にスケーリングできます。どちらの方法でも、ロード・バランサの作成後にいつでもシェイプを変更できます。

  • コンパートメント

    コンパートメントは、Oracle Cloud Infrastructureテナンシ内のリージョン間論理パーティションです。コンパートメントを使用して、Oracle Cloudでリソースを編成し、リソースへのアクセスを制御して、使用割当て制限を設定します。特定のコンパートメント内のリソースへのアクセスを制御するには、誰がリソースにアクセスできるか、どのアクションを実行できるかを指定するポリシーを定義します。

  • コンピュート

    Oracle Cloud Infrastructure Computeサービスを使用すると、クラウドでコンピュート・ホストをプロビジョニングおよび管理できます。CPU、メモリー、ネットワーク帯域幅およびストレージのリソース要件を満たすシェイプを使用してコンピュート・インスタンスを起動できます。コンピュート・インスタンスを作成したら、それをセキュアにアクセスし、再起動、ボリュームのアタッチやデタッチを行い、不要になったときにインスタンスを終了できます。

  • インターネット・ゲートウェイ

    インターネット・ゲートウェイを使用すると、VCN内のパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。

  • ロード・バランサ

    Oracle Cloud Infrastructure Load Balancingサービスは、1つのエントリ・ポイントからバックエンド内の複数のサーバーへの自動トラフィック分散を提供します。

  • リージョン

    Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的な領域です。リージョンは他のリージョンから独立しており、巨大な距離は(国全体または大陸にわたって)分離できます。

  • ルート表

    仮想ルート表には、サブネットからVCN外部の宛先(通常はゲートウェイを介して)にトラフィックをルーティングするルールが含まれます。

  • テナント

    テナンシは、Oracle Cloud Infrastructureのサインアップ時にOracleがOracle Cloud内で設定するセキュアで分離されたパーティションです。テナンシ内のOracle Cloudでリソースを作成、編成および管理できます。テナンシは、会社または組織と同義です。通常、会社は1つのテナンシを持ち、そのテナンシ内の組織構造を反映します。通常、単一のテナンシは単一のサブスクリプションに関連付けられ、1つのサブスクリプションには通常1つのテナンシのみが含まれます。

  • WordPressコンテンツ管理システム(CMS)

    WordPress CMSでは、完全に機能するブログ・サイトまたは汎用的なWebサイトを構築できます。

  • MySQL Community Server

    最も一般的なオープン・ソースSQLデータベース管理システムであるMySQLは、Oracle Corporationによって開発、分散およびサポートされています。