第6章 OpenShift Container Platform での .NET Core 3.1 の使用

6.1. .NET Core イメージストリームのインストール

.NET Core イメージストリームをインストールするには、s2i-dotnetcore のイメージストリーム定義と OpenShift Client (oc) バイナリーを使用してインストールされます。イメージストリームは、Linux、Mac、Windows からインストールできます。スクリプトを使用すると、イメージストリームをインストール、更新、または削除できます。

.NET Core イメージストリームは、グローバルな openshift 名前空間で定義するか、プロジェクト名前空間でローカルにストリームします。openshift 名前空間の定義を更新するには、十分な権限が必要です。

RHEL 7 イメージストリームを取得するには、サブスクリプション認証情報を使用して registry.redhat.io サーバーに対して認証する必要があります。これらのクレデンシャルは、プルシークレットを OpenShift 名前空間に追加して設定されます。

6.1.1. OpenShift Client を使用したイメージストリームのインストール

OpenShift クライアント (oc) を使用して .NET Core イメージストリームをインストールできます。

前提条件

  • 名前空間には、既存のプルシークレットが存在する必要があります。名前空間にプルシークレットが存在しない場合。『Red Hat Container Registry Authentication』の手順に従ってこれを追加します。

手順

  1. 利用可能な .NET Core イメージストリームの一覧を表示します。

    $ oc describe is dotnet

    出力には、インストールされているイメージが表示されます。イメージがインストールされていない場合は、Error from server (NotFound) メッセージが表示されます。

  2. .NET Core イメージストリームをインストールします。

    $ oc create -f https://raw.githubusercontent.com/redhat-developer/s2i-dotnetcore/master/dotnet_imagestreams.json
  3. .NET Core イメージストリームがすでにインストールされている場合は、以下を実行して新しいバージョンを含めることができます。

    $ oc replace -f https://raw.githubusercontent.com/redhat-developer/s2i-dotnetcore/master/dotnet_imagestreams.json

6.1.2. Linux および macOS へのイメージストリームのインストール

このスクリプト を使用して、Linux および macOS にイメージストリームをインストール、アップグレード、または削除できます。

手順

  1. スクリプトをダウンロードします。

    1. Linux では、以下を使用します。

      $ wget https://raw.githubusercontent.com/redhat-developer/s2i-dotnetcore/master/install-imagestreams.sh
    2. Mac の場合は、以下を使用します。

      $ curl https://raw.githubusercontent.com/redhat-developer/s2i-dotnetcore/master/install-imagestreams.sh -o install-imagestreams.sh
  2. スクリプトを実行可能にします。

    $ chmod +x install-imagestreams.sh
  3. OpenShift クラスターにログインします。

    $ oc login
  4. イメージストリームをインストールし、registry.redhat.io に対して認証用のプルシークレットを追加します。

    ./install-imagestreams.sh --os rhel7 [--user subscription_username --password subscription_password]

    subscription_username はユーザーの名前に置き換え、subscription_password をユーザーのパスワードに置き換えます。RHEL7 ベースのイメージを使用する予定がない場合は、認証情報は省略できます。

    プルシークレットが存在する場合は、--user--password 引数は無視されます。

関連情報

  • ./install-imagestreams.sh --help

6.1.3. Windows でのイメージストリームのインストール

このスクリプト を使用すると、Windows のイメージストリームのインストール、アップグレード、または削除を行うことができます。

手順

  1. スクリプトをダウンロードします。

    Invoke-WebRequest https://raw.githubusercontent.com/redhat-developer/s2i-dotnetcore/master/install-imagestreams.ps1 -UseBasicParsing -OutFile install-imagestreams.ps1
  2. OpenShift クラスターにログインします。

    $ oc login
  3. イメージストリームをインストールし、registry.redhat.io に対して認証用のプルシークレットを追加します。

    ./install-imagestreams.sh --OS rhel7 [-User subscription_username -Password subscription_password]

    subscription_username はユーザーの名前に置き換え、subscription_password をユーザーのパスワードに置き換えます。RHEL7 ベースのイメージを使用する予定がない場合は、認証情報は省略できます。

    プルシークレットがすでに存在する場合は、-User-Password 引数は無視されます。

注記

PowerShell の ExecutionPolicy では、このスクリプトの実行が禁止される場合があります。ポリシーを緩和するには、Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force を実行します。

関連情報

  • Get-Help .\install-imagestreams.ps1