6.2. ConfigMap のマウント
機密でない設定データをワークスペースにマウントするには、Kubernetes ConfigMaps を使用します。
Kubernetes ConfigMaps を使用すると、アプリケーションの設定値などの機密性の低いデータをマウントできます。
Kubernetes ConfigMaps を組織の OpenShift Dev Spaces インスタンスの OpenShift クラスター内の Dev Workspace
コンテナーにマウントします。
前提条件
-
宛先 OpenShift クラスターへの管理権限を持つアクティブな
oc
セッション。CLI のスタートガイド を参照してください。 -
ユーザープロジェクトで、新規の ConfigMap を作成するか、すべての
Dev Workspace
コンテナーにマウントする既存の ConfigMap を決定している。
手順
ConfigMap のマウントに必要なラベルを ConfigMap に追加します。
oc label configmap <ConfigMap_name> \ controller.devfile.io/mount-to-devworkspace=true \ controller.devfile.io/watch-configmap=true
$ oc label configmap <ConfigMap_name> \ controller.devfile.io/mount-to-devworkspace=true \ controller.devfile.io/watch-configmap=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: アノテーションを使用して、ConfigMap のマウント方法を設定します。
Expand 表6.2 オプションのアノテーション アノテーション 説明 controller.devfile.io/mount-path:
マウントパスを指定します。
デフォルトは
/etc/config/<ConfigMap_name>
です。controller.devfile.io/mount-as:
リソースのマウント方法を指定します:
file
、subpath
、またはenv
。デフォルトは
file
です。mount-as:file
は、キーと値をマウントパス内のファイルとしてマウントします。mount-as:subpath
は、サブパスボリュームマウントを使用して、マウントパス内のキーと値をマウントします。mount-as:env
は、すべてのDev Workspace
コンテナーに環境変数としてキーと値をマウントします。
例6.2 ConfigMap を環境変数としてマウントする
ワークスペースを開始すると、<env_var_1>
および <env_var_2>
環境変数が Dev Workspace
コンテナーで使用可能になります。
6.2.1. Git 設定のマウント リンクのコピーリンクがクリップボードにコピーされました!
プロバイダーのユーザープロファイルページでユーザー名とメールが設定されていると、user.name
フィールドと user.email
フィールドは、Git プロバイダーアクセストークン または OAuth 経由で生成されたトークンによって OpenShift Dev Spaces に接続されている git プロバイダーからの gitconfig
コンテンツに自動的に設定されます。
以下の手順に従って、Git config ファイルをワークスペースにマウントします。
前提条件
- クラスターにログインしている。
手順
新規の OpenShift ConfigMap を準備します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ConfigMap を適用します。
oc apply -f - <<EOF <ConfigMap_prepared_in_step_1> EOF
$ oc apply -f - <<EOF <ConfigMap_prepared_in_step_1> EOF
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
- Git プロバイダーがホストする リモート Git リポジトリーの URL を使用して、新しいワークスペースを開始します。
-
ワークスペースが起動したら、
tools
コンテナーで新しいターミナルを開き、git config --get-regexp user.*
を実行します。Git ユーザー名とメールが出力に表示されるはずです。