このトピックでは、Nginx イメージを使用してデプロイアプリケーションをデプロイする方法について説明します。Alibaba Cloud Container Compute Service (ACS) コンソールを使用して、Nginx イメージをプルし、サービスを作成し、ネットワークルーティングを設定することで、アプリケーションを作成できます。
前提条件
ACS クラスタが作成済みであり、ドメイン名 foo.bar.com
を持つ Ingress が存在しないこと。詳細については、ACS クラスタの作成 を参照してください。
ステップ 1: NGINX アプリケーションの作成
ACS コンソール にログインします。左側のナビゲーションペインで、クラスタ をクリックします。
クラスタ ページで、管理するクラスタを見つけ、その ID をクリックします。クラスタ詳細ページの左側のナビゲーションペインで、
を選択します。デプロイメント ページで、左上隅にある イメージから作成 をクリックします。次の表は、主要なパラメータを示しています(その他のパラメータにはデフォルト値を使用できます)。
構成項目
説明
値の例
スクリーンショット
基本情報
アプリケーションの 名前 を入力し、次へ をクリックします。
nginxtest
コンテナ
Nginx イメージを選択します。
イメージ名 セクションで、イメージを選択 をクリックします。
アーティファクトセンター をクリックします。
nginx を検索します。
nginx イメージを選択し、イメージタグを選択 をクリックし、必要なタグを選択して、OK をクリックします。
関連フィールドに入力し、次へ をクリックします。
nginx
詳細設定
サービスを作成します。
作成 をクリックします。
次の詳細情報で ポートマッピング を追加します。
名前: http
サービスポート: 80
コンテナポート: 80
OK をクリックします。
サービス名: nginxtest-svc
ポート名: http
サービスポート: 80
コンテナポート: 80
Ingress の作成 (オプション):
作成 をクリックします。
ルール セクションで、ドメイン を
foo.bar.com
に設定し、サービス セクションの 名前 に作成したサービスを選択します。Ingress クラス を、作成した ALB サーバーロードバランサーの名前に設定します。詳細については、ALB Ingress の概要 を参照してください。
作成 をクリックします。
ドメイン名: foo.bar.com
名前: nginxtest-svc
Horizontal Pod Autoscaler (HPA) の構成:
HPA を有効にします。
最小レプリカ数 を 2 に設定します。
ページ下部にある 作成 をクリックします。
HPA: 有効
最小レプリカ数: 2
次のインターフェースは、アプリケーションが正常に作成されたことを示しています。
ステップ 2: テスト Web サイトへのアクセス
コンピュータの Hosts ファイルの構成
ACS コンソール にログインします。左側のナビゲーションペインで、クラスタ をクリックします。
クラスタ ページで、管理するクラスタを見つけ、その ID をクリックします。クラスタ詳細ページの左側のナビゲーションペインで、
を選択します。デプロイメント ページで、ステップ 1 で作成したアプリケーション名をクリックします。
アクセス方法 タブをクリックし、サービスの 外部エンドポイント をメモします。
ドメインを特定の IP アドレスにバインドするには、IP アドレス + スペース + ドメイン名 の形式(例:
39.104.XX.XX foo.bar.com
)でエントリを追加して、コンピュータの Hosts ファイルを編集します。その後、ドメイン名を使用してサービスにアクセスできます。Hosts ファイルの編集方法は、オペレーティングシステムによって異なります。
Windows (管理者権限が必要)
マイコンピュータを開き、アドレスバーに
C:\WINDOWS\system32\drivers\etc
と入力して、Hosts ファイルを見つけます。メモ帳で Hosts ファイルを編集し、末尾に
39.104.XX.XX foo.bar.com
を追加して、変更を保存します。
Mac
メニューバーから、移動 > フォルダへ移動 を選択し、
/private/etc
と入力して、Enter キーを押します。Hosts ファイルを見つけ、編集するためにデスクトップにコピーします。
デスクトップの Hosts ファイルを右クリックし、プログラムから開く を選択し、テキストエディット を選択します。
Hosts ファイルの末尾に
39.104.XX.XX foo.bar.com
を追加します。ファイルを保存し、/private/etc
フォルダにある元の Hosts ファイルを編集済みバージョンに置き換えます。
ブラウザを使用して Web サイトにアクセスします。
ブラウザを起動し、キャッシュをクリアするか、シークレットモードを使用し、
http://foo.bar.com
に移動します。次の画像は例です(実際の結果はブラウザの表示によって異なる場合があります)。
ALB サーバーロードバランサードメイン名解決の使用
デプロイメント ページで、ステップ 1 で作成したアプリケーション名をクリックします。
アクセス方法 タブをクリックし、Ingress エンドポイント をメモします。
次の手順に従って CNAME レコードを作成します。
重要ホストドメイン名が TXT レコード検証に合格していることを確認してください。
ドメイン名解決コンソール にログインします。
ドメイン名解決 ページで、ドメイン名を追加 をクリックします。
ドメイン名を追加 ダイアログで、ホストドメイン名を入力し、OK をクリックします。
ターゲットドメイン名の アクション 列で、DNS 設定 をクリックします。
DNS 設定 ページで、DNS レコードを追加 をクリックします。
DNS レコードを追加 ページで、次の項目を構成して CNAME 解決設定を完了し、OK をクリックします。
構成項目
説明
レコードタイプ
ドロップダウンメニューから CNAME を選択します。
ホストレコード
ドメイン名のプレフィックス(例:
www
)。解決リクエストソース
デフォルトオプションを選択します。
レコード値
ドメイン名に対応する CNAME アドレスを入力します。これは、前に記録した DNS 名です。
TTL
DNS レコードが DNS サーバーにキャッシュされる存続時間 (TTL)。特に必要がない限り、デフォルト値を使用します。
ブラウザを使用して Web サイトにアクセスします。
ブラウザを起動し、キャッシュをクリアするか、シークレットモードを使用し、http://foo.bar.com
に移動します。次の画像は例です(実際の結果はブラウザの表示によって異なる場合があります)。
「工業情報化部(MIIT)の関連法に従って登録されていないため、Web サイトにアクセスできません」などの重要なメッセージが表示された場合は、Ingress のフロントエンドに構成されているロードバランサー (LB) のタイプがパブリック IP アドレスを公開するように設定されているかどうかを確認してください。パブリック IP の場合、MIIT の要件に従って、クラウドプラットフォームでパブリックドメイン名サービスを公開するには、対応するドメイン登録が必要です。ドメインは、適切に解決およびアクセスできるようになる前に、レビューおよび承認される必要があります。