9.2.3.3. CLI クライアント oc を使用した Externalized Configuration アプリケーションのデプロイメント
このセクションでは、外部化設定のサンプルアプリケーションをビルドし、コマンドラインから OpenShift にデプロイする方法を説明します。
前提条件
- developers.redhat.com/launch を使用して作成されたサンプルアプリケーション。詳細は「developers.redhat.com/launch を使用したサンプルアプリケーションのデプロイメント」を参照してください。
-
認証された
ocクライアント。詳細は 「CLI クライアントocの認証」 を参照してください。
手順
GitHub からプロジェクトのクローンを作成します。
git clone git@github.com:USERNAME/MY_PROJECT_NAME.git
$ git clone git@github.com:USERNAME/MY_PROJECT_NAME.gitCopy to Clipboard Copied! Toggle word wrap Toggle overflow または、プロジェクトの ZIP ファイルをダウンロードして、展開します。
unzip MY_PROJECT_NAME.zip
$ unzip MY_PROJECT_NAME.zipCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しい OpenShift プロジェクトを作成します。
oc new-project MY_PROJECT_NAME
$ oc new-project MY_PROJECT_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow サンプルアプリケーションをデプロイする前に、サービスアカウントへの view アクセス権を割り当て、ConfigMap の内容を読み取るためにアプリケーションが OpenShift API にアクセスできるようにします。
oc policy add-role-to-user view -n $(oc project -q) -z default
$ oc policy add-role-to-user view -n $(oc project -q) -z defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow - アプリケーションの root ディレクトリーに移動します。
application.ymlを使用して ConfigMap 設定を OpenShift にデプロイします。oc create configmap app-config --from-file=application.yml
$ oc create configmap app-config --from-file=application.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow ConfigMap 設定がデプロイされていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Maven を使用して OpenShift へのデプロイメントを開始します。
mvn clean fabric8:deploy -Popenshift
$ mvn clean fabric8:deploy -PopenshiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、Fabric8 Maven プラグインを使用して OpenShift で S2I プロセス を起動し、Pod を起動します。
アプリケーションのステータスを確認し、Pod が実行していることを確認します。
oc get pods -w
$ oc get pods -w NAME READY STATUS RESTARTS AGE MY_APP_NAME-1-aaaaa 1/1 Running 0 58s MY_APP_NAME-s2i-1-build 0/1 Completed 0 2mCopy to Clipboard Copied! Toggle word wrap Toggle overflow MY_APP_NAME-1-aaaaaPod は、完全にデプロイされて起動すると、ステータスがRunningである必要があります。特定の Pod 名が異なります。中間の数字は新規ビルドごとに増えます。末尾の文字は、Pod の作成時に生成されます。アプリケーションのサンプルをデプロイして起動すると、そのルートを決定します。
ルート情報の例
oc get routes
$ oc get routes NAME HOST/PORT PATH SERVICES PORT TERMINATION MY_APP_NAME MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAME MY_APP_NAME 8080Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod のルート情報には、アクセスに使用するベース URL が提供されます。上記の例では、
http://MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAMEをベース URL として使用し、アプリケーションにアクセスします。