3.4.2. 自己署名証明書を使用した Git リポジトリーをサポートする OpenShift Dev Spaces のデプロイ
自己署名証明書を使用する Git プロバイダーでの操作をサポートするように OpenShift Dev Spaces を設定できます。
前提条件
-
OpenShift クラスターへの管理権限を持つアクティブな
ocセッション。Getting started with the OpenShift CLI を参照してください。 - Git バージョン 2 以降
手順
Git サーバーの詳細情報を使用して新規の configMap を作成します。
$ oc create configmap che-git-self-signed-cert \ --from-file=ca.crt=<path_to_certificate> \ 1 --from-literal=githost=<host:port> -n openshift-devspaces 2
注記-
githostを指定しないと、指定された証明書がすべての HTTPS リポジトリーに使用されます。 -
証明書ファイルは、通常、以下のような Base64 ASCII ファイルとして保存されます。
.pem,.crt,.ca-bundle.また、これらはバイナリーデータとしてエンコードすることもできます (例:.cer)。証明書ファイルを保持するすべてのSecretsは、バイナリーデータ証明書ではなく、Base64 ASCII 証明書を使用する必要があります。
-
必要なラベルを ConfigMap に追加します。
$ oc label configmap che-git-self-signed-cert \ app.kubernetes.io/part-of=che.eclipse.org -n openshift-devspaces
Git リポジトリーに自己署名証明書を使用するように OpenShift Dev Spaces オペランドを設定します。「CLI を使用して CheCluster カスタムリソースの設定」 を参照してください。
spec: server: gitSelfSignedCert: true
検証手順
新規ワークスペースを作成および開始します。ワークスペースによって使用されるすべてのコンテナーは、自己署名証明書のあるファイルを含む特殊なボリュームをマウントします。リポジトリーの
.git/configファイルには、Git サーバーホスト (その URL) とhttpセクションの証明書へのパスについての情報が含まれます(git-configに関する Git ドキュメントを参照してください)。例3.11
.git/configファイルの例[http "https://10.33.177.118:3000"] sslCAInfo = /etc/che/git/cert/ca.crt