第3章 開発者ワークスペース


Red Hat CodeReady Workspaces は、開発者ワークスペースに、アプリケーションのコード、ビルド、テスト、実行、およびデバッグに必要なすべてのものを提供します。これを許可するために、開発者ワークスペースは 4 つの主なコンポーネントを提供します。

  1. プロジェクトのソースコード。
  2. Web ベースの IDE。
  3. プロジェクトと連携する開発者が必要とされるツールの依存関係
  4. アプリケーションランタイム: アプリケーションが実稼働環境で実行される環境のレプリカ

Pod は CodeReady Workspaces ワークスペースの各コンポーネントを管理します。そのため、CodeReady Workspaces ワークスペースで実行されているすべてのものは、コンテナー内で実行されます。これにより、CodeReady Workspaces ワークスペースに高い移植性を持たせることができます。

組み込みブラウザーベースの IDE は、CodeReady Workspaces ワークスペースで実行しているすべてについてのアクセスポイントです。これにより、CodeReady Workspaces ワークスペースを簡単に共有できます。

重要

デフォルトでは、1 度に 1 つのワークスペースのみを実行できます。デフォルト値を変更するには、「ユーザーワークスペースの 制限 」を参照してください。

Expand
表3.1 機能および利点
機能従来の IDE ワークスペースRed Hat CodeReady Workspaces ワークスペース

設定およびインストールが必要

Yes

No

組み込みツール

部分的。IDE プラグインには設定が必要です。依存関係にはインストールと設定が必要です。例: JDK、Maven、Node

Yesプラグインは、それらの依存関係を提供します。

アプリケーションランタイムが指定される

No。開発者はこれを個別に管理する必要があります。

Yesアプリケーションランタイムはワークスペースで複製されます。

共有可能

No。または容易ではない

Yes開発者ワークスペースは URL で共有可能です。

バージョン管理可能

No

Yesdevfile はプロジェクトのソースコードと共に存在します。

どこからでもアクセス可能

No。インストールが必要です。

Yesブラウザーのみが必要です。

CodeReady Workspaces ワークスペースを起動するには、以下のオプションを選択できます。

Dashboard を使用して CodeReady Workspaces 2.4 を検出します。

CodeReady Workspaces 2.4 ワークスペースを起動する方法として、devfile を使用します。

CodeReady Workspaces 2.4 ワークスペースと対話するには、ブラウザーベースの IDE を使用します。CodeReady Workspaces 2.4 ワークスペースと対話する代替方法は、「ワークスペースへのリモートアクセス」 を参照してください。

3.1. devfile を使用したワークスペースの設定

CodeReady Workspaces ワークスペースを迅速かつ簡単に設定するには、devfile を使用します。devfile の概要とその使用方法については、本セクションの手順を参照してください。

3.1.1. devfile とは

devfile は、開発環境を記述し、定義するファイルです。

  • ソースコード
  • ブラウザー IDE ツールやアプリケーションランタイムなどの開発コンポーネント
  • 事前定義済みのコマンドの一覧
  • クローンを作成するプロジェクト

devfile は、CodeReady Workspaces が複数のコンテナーで構成されるクラウドワークスペースに消費し、変換する YAML ファイルです。devfile は、Git リポジトリーのルートフォルダー、Git リポジトリーの機能ブランチ、公開アクセス可能な宛先、または個別に保存されたアーティファクトとして保存できます。Git リポジトリーに保存される devfile は、devfile.yaml.devfile.yaml などの複数の名前を使用できます。

ワークスペースの作成時に、CodeReady Workspaces はその定義を使用してすべてを開始し、必要なツールおよびアプリケーションランタイムのすべてのコンテナーを実行します。また、CodeReady Workspaces はファイルシステムボリュームをマウントして、ソースコードをワークスペースで利用できるようにします。

devfile は、プロジェクトのソースコードでバージョン管理できます。ワークスペースで古いメンテナンスブランチを修正する必要がある場合、プロジェクトの devfile は、ワークスペースの定義を古いブランチでの機能を開始するために必要な各種ツールと依存関係と共に提供します。これを使用してワークスペースをオンデマンドでインスタンス化します。

CodeReady Workspaces は、ワークスペースで使用するツールと共に devfile の最新の状態を維持します。

  • ワークスペースのプロジェクト(パス、Git の場所、ブランチ)
  • 日次タスクを実行するコマンド(ビルド、実行、テスト、デバッグ)
  • ランタイム環境(アプリケーションを実行するコンテナーイメージ)
  • 開発者がワークスペース(Git、Java サポート、SnarLint、Pulner Request)で使用するツール、IDE 機能、およびヘルパーを含む Che-Theia プラグイン

3.1.2. Git リポジトリーのデフォルトブランチでのワークスペースの作成

CodeReady Workspaces ワークスペースは、Git ソースリポジトリーに保存される devfile を参照して作成できます。CodeReady Workspaces インスタンスは、検出された devfile.yaml ファイルを使用して、/f?url= API を使用してワークスペースを構築します。

前提条件

  • Red Hat CodeReady Workspaces の実行中のインスタンス。Red Hat CodeReady Workspaces のインスタンスをインストールするには、https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces/2.4/html-single/installation_guide/index#installing-codeready-workspaces_crw を参照して ください
  • devfile.yaml または .devfile.yaml ファイルは、HTTPS で利用可能な Git リポジトリーのルートフォルダーにあります。devfile の作成および使用についての詳細は、「devfile を使用してワークスペースを移植可能にする」 を参照してください。

手順

以下の URL を開いてワークスペースを実行します。 https://codeready-<openshift_deployment_name>.<domain_name>/f?url=https://<GitRepository>

https://che.openshift.io/f?url=https://github.com/eclipse/che
Copy to Clipboard Toggle word wrap

3.1.3. Git リポジトリーの機能ブランチでのワークスペースの作成

CodeReady Workspaces ワークスペースは、ユーザーの選択する機能ブランチの Git ソースリポジトリーに保存される devfile を参照して作成できます。次に CodeReady Workspaces インスタンスは検出された devfile を使用してワークスペースをビルドします。

前提条件

  • Red Hat CodeReady Workspaces の実行中のインスタンス。Red Hat CodeReady Workspaces のインスタンスをインストールするには、https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces/2.4/html-single/installation_guide/index#installing-codeready-workspaces_crw を参照して ください
  • devfile.yaml または .devfile.yaml ファイルは、HTTPS 経由でアクセス可能なユーザーが選択する特定のブランチの、Git リポジトリーのルートフォルダーにあります。devfile の作成および使用についての詳細は、「devfile を使用してワークスペースを移植可能にする」 を参照してください。

手順

以下の URL を開いてワークスペースを実行します。 https://codeready-<openshift_deployment_name>.<domain_name>/f?url=<GitHubBranch>

以下の URL 形式を使用して、che.openshift.io でホストされる実験的な quarkus-quickstarts ブランチを開きます。

https://che.openshift.io/f?url=https://github.com/maxandersen/quarkus-quickstarts/tree/che
Copy to Clipboard Toggle word wrap

3.1.4. HTTP を使用した一般にアクセス可能なスタンドアロン devfile でのワークスペースの作成

ワークスペースは、devfile、devfile の未加工コンテンツを参照する URL を使用して作成できます。次に CodeReady Workspaces インスタンスは検出された devfile を使用してワークスペースをビルドします。

前提条件

  • Red Hat CodeReady Workspaces の実行中のインスタンス。Red Hat CodeReady Workspaces のインスタンスをインストールするには、https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces/2.4/html-single/installation_guide/index#installing-codeready-workspaces_crw を参照して ください
  • 一般にアクセス可能なスタンドアロン devfile.yaml ファイル。devfile の作成および使用についての詳細は、「devfile を使用してワークスペースを移植可能にする」 を参照してください。

手順

  1. 以下の URL を開いてワークスペースを実行します。 https://codeready-<openshift_deployment_name>.<domain_name>/f?url=https://<yourhosturl>/devfile.yaml

https://che.openshift.io/f?url=https://gist.githubusercontent.com/themr0c/ef8e59a162748a8be07e900b6401e6a8/raw/8802c20743cde712bbc822521463359a60d1f7a9/devfile.yaml
Copy to Clipboard Toggle word wrap

3.1.5. factory パラメーターを使用した devfile 値の上書き

リモート devfile の以下のセクションにある値は、特別に作成される追加の factory パラメーターを使用して上書きできます。

  • apiVersion
  • metadata
  • projects
  • attributes

前提条件

  • Red Hat CodeReady Workspaces の実行中のインスタンス。Red Hat CodeReady Workspaces のインスタンスをインストールするには、https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces/2.4/html-single/installation_guide/index#installing-codeready-workspaces_crw を参照して ください
  • 一般に利用可能なスタンドアロンの devfile.yaml ファイル。devfile の作成および使用についての詳細は、「devfile を使用してワークスペースを移植可能にする」 を参照してください。

手順

  1. 以下の URL に移動してワークスペースを開きます。 https://codeready-<openshift_deployment_name>.<domain_name>/f?url=https://<hostURL>/devfile.yaml&override.<parameter.path>=<value>

generateName プロパティーを上書きする例

以下の初期 devfile について考えてみましょう。

---
apiVersion: 1.0.0
metadata:
  generateName: golang-
projects:
...
Copy to Clipboard Toggle word wrap

generateName 値を追加または上書きするには、以下の factory URL を使用します。

https://che.openshift.io/f?url=https://gist.githubusercontent.com/themr0c/ef8e59a162748a8be07e900b6401e6a8/raw/8802c20743cde712bbc822521463359a60d1f7a9/devfile.yaml&override.metadata.generateName=myprefix
Copy to Clipboard Toggle word wrap

作成されるワークスペースには、以下の devfile モデルがあります。

---
apiVersion: 1.0.0
metadata:
  generateName: myprefix
projects:
...
Copy to Clipboard Toggle word wrap

プロジェクトソースブランチプロパティーの上書き例

以下の初期 devfile について考えてみましょう。

---
apiVersion: 1.0.0
metadata:
  generateName: java-mysql-
projects:
  - name: web-java-spring-petclinic
    source:
      type: git
      location: "https://github.com/spring-projects/spring-petclinic.git"
...
Copy to Clipboard Toggle word wrap

ソースの branch の値を追加または上書きするには、以下の factory URL を使用します。

https://che.openshift.io/f?url=https://gist.githubusercontent.com/themr0c/ef8e59a162748a8be07e900b6401e6a8/raw/8802c20743cde712bbc822521463359a60d1f7a9/devfile.yaml&override.projects.web-java-spring-petclinic.source.branch=1.0.x
Copy to Clipboard Toggle word wrap

作成されるワークスペースには、以下の devfile モデルがあります。

apiVersion: 1.0.0
metadata:
  generateName: java-mysql-
projects:
  - name: web-java-spring-petclinic
    source:
      type: git
      location: "https://github.com/spring-projects/spring-petclinic.git"
      branch: 1.0.x
...
Copy to Clipboard Toggle word wrap

属性値の上書きまたは作成例

以下の初期 devfile について考えてみましょう。

---
apiVersion: 1.0.0
metadata:
  generateName: golang-
attributes:
   persistVolumes: false
projects:
...
Copy to Clipboard Toggle word wrap

persistVolumes 属性値を追加または上書きするには、以下の factory URL を使用します。

https://che.openshift.io/f?url=https://gist.githubusercontent.com/themr0c/ef8e59a162748a8be07e900b6401e6a8/raw/8802c20743cde712bbc822521463359a60d1f7a9/devfile.yaml&override.attributes.persistVolumes=true
Copy to Clipboard Toggle word wrap

作成されるワークスペースには、以下の devfile モデルがあります。

---
apiVersion: 1.0.0
metadata:
  generateName: golang-
attributes:
   persistVolumes: true
projects:
...
Copy to Clipboard Toggle word wrap

属性を上書きすると、attributes キーワードに続くすべてが属性名として解釈されるため、ドットで区切られた名前を使用できます。

https://che.openshift.io/f?url=https://gist.githubusercontent.com/themr0c/ef8e59a162748a8be07e900b6401e6a8/raw/8802c20743cde712bbc822521463359a60d1f7a9/devfile.yaml&override.attributes.dot.name.format.attribute=true
Copy to Clipboard Toggle word wrap

作成されるワークスペースには、以下の devfile モデルがあります。

---
apiVersion: 1.0.0
metadata:
  generateName: golang-
attributes:
   dot.name.format.attribute: true
projects:
...
Copy to Clipboard Toggle word wrap

3.1.6. crwctl およびローカル devfile を使用したワークスペースの作成

crwctl ツールにローカルに保存された devfile を参照させて、CodeReady Workspaces ワークスペースを作成できます。次に CodeReady Workspaces インスタンスは検出された devfile を使用してワークスペースをビルドします。

前提条件

手順

  1. 以下のように、crwctl ツールに workspace:start パラメーターを指定して devfile からワークスペースを実行します。
$ crwctl workspace:start --devfile=devfile.yaml
Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat