3.5. リモートでワークスペースにアクセス
本セクションでは、ブラウザー外の CodeReady Workspaces ワークスペースにリモートでアクセスする方法を説明します。
CodeReady Workspaces ワークスペースはコンテナーとして存在し、デフォルトではブラウザーウィンドウで変更されています。これに加えて、CodeReady Workspaces ワークスペースと対話する以下の方法があります。
-
OpenShift コマンドラインツール
kubectl
を使用してワークスペースコンテナーでコマンドラインを開く -
kubectl
ツールを使用したファイルのアップロードおよびダウンロード
3.5.1. OpenShift コマンドラインツールを使用したワークスペースのリモートアクセス リンクのコピーリンクがクリップボードにコピーされました!
OpenShift コマンドラインツール(kubectl
)を使用して CodeReady Workspaces ワークスペースにリモートでアクセスするには、本セクションの手順に従います。
このセクションでは、kubectl
ツールを使用してシェルを開き、CodeReady Workspaces ワークスペースでファイルを管理します。oc
OpenShift コマンドラインツールを使用できます。
前提条件
-
kubectl
ツールが利用可能である。OpenShift の Web サイトを参照して ください。 oc version
コマンドを使用してkubectl
のインストールを確認します。oc version
$ oc version Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.0", GitCommit:"e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529", GitTreeState:"clean", BuildDate:"2019-06-19T16:40:16Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"darwin/amd64"} Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.0", GitCommit:"e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529", GitTreeState:"clean", BuildDate:"2019-06-19T16:32:14Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow バージョン 1.5.0 以降については、本セクションの手順に進みます。
手順
-
exec
コマンドを使用してリモートシェルを開きます。 OpenShift プロジェクトの名前と、CodeReady Workspaces ワークスペースを実行する Pod を検索するには、以下を実行します。
oc get pod -l che.workspace_id --all-namespaces
$ oc get pod -l che.workspace_id --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE che workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4 4/4 Running 0 6m4s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
上記の例では、Pod 名は workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4
で、プロジェクトは codeready
です。
コンテナーの名前を確認するには、以下のコマンドを実行します。
NAMESPACE=che POD=workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4 oc get pod ${POD} -o custom-columns=CONTAINERS:.spec.containers[*].name
$ NAMESPACE=che $ POD=workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4 $ oc get pod ${POD} -o custom-columns=CONTAINERS:.spec.containers[*].name CONTAINERS maven,che-machine-execpau,theia-ide6dj,vscode-javaw92
Copy to Clipboard Copied! Toggle word wrap Toggle overflow プロジェクト、Pod 名、およびコンテナーの名前がある場合、
kubectl
コマンドを使用してリモートシェルを開きます。NAMESPACE=che POD=workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4 CONTAINER=maven oc exec -ti -n ${NAMESPACE} ${POD} -c ${CONTAINER} bash
$ NAMESPACE=che $ POD=workspace7b2wemdf3hx7s3ln.maven-74885cf4d5-kf2q4 $ CONTAINER=maven $ oc exec -ti -n ${NAMESPACE} ${POD} -c ${CONTAINER} bash user@workspace7b2wemdf3hx7s3ln $
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテナーから、CodeReady Workspaces ワークスペースターミナルから、(CodeReady Workspaces ワークスペースターミナルから)
build
およびrun
コマンドを実行します。user@workspace7b2wemdf3hx7s3ln $ mvn clean install [INFO] Scanning for projects... (...)
user@workspace7b2wemdf3hx7s3ln $ mvn clean install [INFO] Scanning for projects... (...)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
その他のリソース
-
kubectl
の詳細は、OpenShift ドキュメントを参照してください。