10.4. CLI を使用してテンプレートからオブジェクトを作成する手順


CLI を使用して、テンプレートを処理し、オブジェクトを作成するために生成された設定を使用できます。

10.4.1. ラベルの追加

ラベルは、Pod などの生成されたオブジェクトを管理し、整理するために使用されます。テンプレートで指定されるラベルは、テンプレートから生成されるすべてのオブジェクトに適用されます。

手順

  • コマンドラインからテンプレートにラベルを追加します。

    $ oc process -f <filename> -l name=otherLabel

10.4.2. パラメーターのリスト表示

上書きできるパラメーターのリストは、テンプレートの parameters セクションに表示されます。

手順

  1. CLI で以下のコマンドを使用し、使用するファイルを指定して、パラメーターをリスト表示することができます。

    $ oc process --parameters -f <filename>

    または、テンプレートがすでにアップロードされている場合には、以下を実行します。

    $ oc process --parameters -n <project> <template_name>

    たとえば、デフォルトの openshift プロジェクトにあるクイックスタートテンプレートのいずれかに対してパラメーターを一覧表示する場合に、以下のような出力が表示されます。

    $ oc process --parameters -n openshift rails-postgresql-example

    出力例

    NAME                         DESCRIPTION                                                                                              GENERATOR           VALUE
    SOURCE_REPOSITORY_URL        The URL of the repository with your application source code                                                                  https://github.com/sclorg/rails-ex.git
    SOURCE_REPOSITORY_REF        Set this to a branch name, tag or other ref of your repository if you are not using the default branch
    CONTEXT_DIR                  Set this to the relative path to your project if it is not in the root of your repository
    APPLICATION_DOMAIN           The exposed hostname that will route to the Rails service                                                                    rails-postgresql-example.openshiftapps.com
    GITHUB_WEBHOOK_SECRET        A secret string used to configure the GitHub webhook                                                     expression          [a-zA-Z0-9]{40}
    SECRET_KEY_BASE              Your secret key for verifying the integrity of signed cookies                                            expression          [a-z0-9]{127}
    APPLICATION_USER             The application user that is used within the sample application to authorize access on pages                                 openshift
    APPLICATION_PASSWORD         The application password that is used within the sample application to authorize access on pages                             secret
    DATABASE_SERVICE_NAME        Database service name                                                                                                        postgresql
    POSTGRESQL_USER              database username                                                                                        expression          user[A-Z0-9]{3}
    POSTGRESQL_PASSWORD          database password                                                                                        expression          [a-zA-Z0-9]{8}
    POSTGRESQL_DATABASE          database name                                                                                                                root
    POSTGRESQL_MAX_CONNECTIONS   database max connections                                                                                                     10
    POSTGRESQL_SHARED_BUFFERS    database shared buffers                                                                                                      12MB

    この出力から、テンプレートの処理時に正規表現のようなジェネレーターで生成された複数のパラメーターを特定できます。

10.4.3. オブジェクトリストの生成

CLI を使用して、標準出力にオブジェクトリストを返すテンプレートを定義するファイルを処理できます。

手順

  1. 標準出力にオブジェクトリストを返すテンプレートを定義するファイルを処理します。

    $ oc process -f <filename>

    または、テンプレートがすでに現在のプロジェクトにアップロードされている場合には以下を実行します。

    $ oc process <template_name>
  2. テンプレートを処理し、oc create の出力をパイプして、テンプレートからオブジェクトを作成します。

    $ oc process -f <filename> | oc create -f -

    または、テンプレートがすでに現在のプロジェクトにアップロードされている場合には以下を実行します。

    $ oc process <template> | oc create -f -
  3. 上書きする <name>=<value> の各ペアに、-p オプションを追加することで、ファイルに定義されたパラメーターの値を上書きできます。パラメーター参照は、テンプレートアイテム内のテキストフィールドに表示されます。

    たとえば、テンプレートの以下の POSTGRESQL_USER および POSTGRESQL_DATABASE パラメーターを上書きし、カスタマイズされた環境変数の設定を出力します。

    1. テンプレートからのオブジェクトリストの作成

      $ oc process -f my-rails-postgresql \
          -p POSTGRESQL_USER=bob \
          -p POSTGRESQL_DATABASE=mydatabase
    2. JSON ファイルは、ファイルにリダイレクトすることも、oc create コマンドで処理済みの出力をパイプして、テンプレートをアップロードせずに直接適用することも可能です。

      $ oc process -f my-rails-postgresql \
          -p POSTGRESQL_USER=bob \
          -p POSTGRESQL_DATABASE=mydatabase \
          | oc create -f -
    3. 多数のパラメーターがある場合は、それらをファイルに保存してからそのファイルを oc process に渡すことができます。

      $ cat postgres.env
      POSTGRESQL_USER=bob
      POSTGRESQL_DATABASE=mydatabase
      $ oc process -f my-rails-postgresql --param-file=postgres.env
    4. --param-file の引数として "-" を使用して、標準入力から環境を読み込むこともできます。

      $ sed s/bob/alice/ postgres.env | oc process -f my-rails-postgresql --param-file=-
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.