注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
このチュートリアルでは、JupyterLab® または RStudio® Workbench のいずれかのワークスペースを設定することで、Code Workspaces の紹介を行います。
コードワークスペースを起動するには、Code Workspaces アプリケーションを開き、General タブに移動します。次に、コードワークスペースを作成するフォルダーを選択します。
プロジェクトで Editor
や Owner
の役割を持つユーザーは、コードワークスペースの設定を変更することができます。プロジェクトで Viewer
の役割を持つユーザーは、ワークスペースを起動することができます。ホームフォルダーをロケーションとして選択することもできますが、これによりコードワークスペースとデータがプロジェクトに制限される可能性があります。
起動するワークスペースのタイプを選択します。現在、サポートされているワークスペースは JupyterLab と RStudio® Workbench です。
次に、作成するコードワークスペースの名前と場所を設定します。RStudio® のワークスペースを作成している場合、ライセンスを選択することができます。ほとんどの場合、ライセンスは自動的に選択されます。
ワークスペースを起動する各ユーザーは自分自身の孤立したセッションを実行します。2人以上のユーザーが同じワークスペースを使用する場合、すべてのユーザーが基礎となるコードリポジトリに対して Viewer
権限以上を持っていることを確認してください。コードワークスペースの基礎となるコードリポジトリについては、以下で詳しく説明します。
高度な設定では、コードワークスペースのアイドル時間とリソースプロファイルを定義することができます。これらの設定は、右上隅のギアアイコンを選択してアクセスできるワークスペースの Settings パネルでいつでも変更できます。
すべてのコードワークスペースは、Foundry のコードリポジトリによって支えられています。これにより、コードワークスペースはブランチ、マージ、コミット履歴などの業界標準のバージョン管理機能を持つことができるだけでなく、他の人がワークスペース内のコードを閲覧し、同じワークスペースで安全に操作することができます。
ユーザーは、リポジトリが Code Workspaces のインフラとして使用するためにカスタマイズされているため、基礎となるコードリポジトリで直接変換を公開することはできません。すべてのコードはコードワークスペースから公開する必要があります。
Foundry のソースから直接データをインポートすることができます。これは、Data タブに移動し、Add dataset > Import dataset を選択することで行うことができます。コードワークスペースの現在のプロジェクト外から(ユーザーのホームフォルダーを含む)インポートされた任意のデータは、参照を追加する必要があります。
データセットビューは、コードワークスペースでインポートされたデータセットとして使用することはできません。代わりに、データセットビューを新規または既存のデータセットにコピーしてください。
左パネルの Packages タブに移動するか、または Jupyter® 用の Conda または PyPI、RStudio® 用の CRAN を直接使用してパッケージをインストールすることで、コードワークスペースにパッケージをインポートすることができます。
JupyterLab® ワークスペースは、Conda や PyPI からのパッケージのインストールをサポートしています。デフォルトでは、Code Workspaces は conda-forge
と pypi.org
を公開しています。他のチャンネルをコードワークスペースに追加するには、それらをバッキングコードリポジトリに追加し、コードワークスペースを再起動します。
パッケージのインストールには、Conda パッケージには mamba
を、PyPI パッケージには pip
を使用します。
Packages タブからパッケージを参照し、インストールしたいパッケージを選択します。これにより、 .ipynb
ファイルに貼り付けて実行するためのインストールコマンドが生成されます。
RStudio® ワークスペースは、CRAN、Posit™ Package Manager、または Bioconductor からのパッケージのインストールをサポートしています。デフォルトでは、Code Workspaces は Posit™ Public Package Manager のすべてと Bioconductor を公開しています。他のチャンネル(MRAN など)を追加するには、それらをバッキングコードリポジトリに追加し、コードワークスペースを再起動します。
パッケージのインストールには、 renv
を使用します。これは renv
が認証された CRAN チャンネルをサポートしているからです。
Packages タブからパッケージを閲覧し、インストールしたいパッケージを選択することができます。これにより、RStudio® Workbench にコピーペーストして実行するためのインストールコマンドが生成されます。一般的に、CRAN パッケージは renv::install("<package>")
で、Bioconductor パッケージは renv::install("bioc::<package>")
でインストールされます。
同じワークスペースの他のユーザーがあなたのコードを見るためには、作業中のブランチにコードを公開する必要があります。
コードを公開すると、CI チェックが実行され、登録されているすべての Code Workspace ダッシュボードの新しいバージョンが公開されます。ベストプラクティスとして、ダッシュボードの作成、データの分析、データ変換の作成、モデルの構築など、一つのタスクに焦点を絞ったコードワークスペースを保つことをおすすめします。一つのコードワークスペースで複数の独立したワークフローを試みるのではなく。
ブランチマネージャーを使ってコードワークスペースのブランチを作成したり、ブランチをチェックアウトしたり、他のバージョン管理の活動を行うことができます。
ブランチを作成したり、ブランチを見つけるためには、Sync changes ボタンの左側にあるブランチセクションを選択します。
Checkout branch ダイアログから、新しくブランチを作成したり、既存のブランチを検索したりして、Checkout を選択します。
Foundry の他の箇所でのブランチ作成と同様に、コードワークスペースで利用可能なデータは、現在作業中のブランチから取得されます(フォールバック あり)。出力データセットにデータを書き込む場合、そのデータは現在のブランチに書き込まれます。
Propose changes ボタンを使用して、ブランチをマスターにマージすることができます。変更を提案した後、プルリクエスト(PR)プレビューが表示されます。
インターフェースの右上隅にある Share ボタンを選択することで、コードワークスペースを共有することができます。
他のユーザーがあなたのコードワークスペースのコードを見るためには、基礎となるコードリポジトリの権限も共有する必要があります。
プロジェクトに Editor
または Owner
の役割を持つユーザーは、コードワークスペースの設定を変更することができます。プロジェクトに Viewer
の役割を持つユーザーは、ワークスペースを起動することができます。
設定の変更を反映するためなど、コードワークスペースを手動で再起動することができます。これには、インターフェースの右上隅にある Active > Restart workspace を選択します。
これにより、初期状態の新しいセッションが生成されます。ワークスペースは、バッキングコードリポジトリにコミットされたすべての変更を反映して自動的に再起動します。ただし、再起動前の状態からすべてを含むわけではありません、例えばインポートしたデータ、メモリに保存された変数、インストールしたパッケージなどです。
ワークスペースを再起動する前に、アプリケーションは自動的にチェックポイントを作成し、最新の変更を同期するようにプロンプトします。
Active > Restore checkpoint を選択することで、ワークスペースを以前のチェックポイントの状態に復元することができます。詳細は下記の checkpoints セクションをご参照ください。Code Workspaces は、ワークスペースの再起動後に自動的にワークスペースを以前のチェックポイントに復元しません。
Code Workspaces を初めて開くユーザーは、/home/user/repo
にクローンされたバッキングリポジトリを持つ空白のワークスペースを受け取ります。
Code Workspaces のセッションは、ユーザーの活動がない場合に自動的にシャットダウンされ、最大で 24 時間持続します(advanced settings のドキュメンテーションで自動シャットダウンについて詳しく説明しています)。
セッションがシャットダウンすると、全ての関連する状態は Foundry の checkpoint に保存され、同じユーザーが次にコードワークスペースを開くときに復元されます。これにより、ユーザーはシャットダウン時点での作業を再開することができます。
Code Workspaces には、既存の作業を保存するための2つの異なる方法があります:手動のコード同期と自動的なチェックポイント作成。
ワークスペースのチェックポイントよりも、基礎となるコードリポジトリに同期したコード(必要なパッケージのインストールをコードの一部として)に依存することをおすすめします。コードの同期は、堅牢なワークフローを保証し、特定のチェックポイントにアクセスできない他のユーザーとの共同作業を容易にします。
Code syncing は手動で行うアクションで、コードワークスペースで既存の作業を保存するための推奨される方法です。コードの同期とは、ファイルをワークスペースのバッキングコードリポジトリにコミットすることを意味します。コード同期を通じて保存された作業は、リポジトリに永久に保存されます。そして、/home/user/repo
フォルダー内の全てがその同期の一部として保存されます。コード同期は、変数の内容、環境上のインストール済みパッケージ、データ、コードセルの出力などの既存の状態を保存しません。ワークスペースの同期履歴は、ワークスペースのバッキングコードリポジトリを通じて参照することができます。一般的に、変更履歴を維持し、すべての関連作業が適切に永久保存されていることを確認するために、頻繁にコードを同期することをおすすめします。
ワークスペース内の既存のすべての変更を保存するには、ワークスペースの右上隅にある Sync changes ボタンを選択します。これが成功すると、変更がワークスペースのバッキングリポジトリにコミットされます。これには、右上隅にあるギアアイコンを選択し、Open code repository を選択することでアクセスできます。
チェックポイント作成 は、セッション間で復元できるようにワークスペースの既存の状態のスナップショットを自動的に取る機能です。コミットされたファイルだけを保存するコード同期とは異なり、チェックポイントは /home/user/repo
の全ての内容(未コミットのコード変更を含む)、/home/user/libs
(インストールされたパッケージを含む)、/home/user/envs
(Conda 環境)、/home/user/data
(ユーザーがダウンロードした追加データ)を保存します。RStudio® の場合、メモリに保存された変数は /home/user/repo/.RData
に保存されます。
デフォルトでは、Code Workspaces は特定のユーザーのセッションのチェックポイントを10分ごとに保存します。チェックポイントはユーザー間で共有されません。Code Workspaces はまた、ワークスペースがシャットダウンする前にチェックポイントを作成します(例えば、手動再起動、手動シャットダウン、自動シャットダウンなど)。非アクティブなコードワークスペースは新しいチェックポイントを生成しません。任意のチェックポイントは最大30日間持続します。その結果、有効なチェックポイントが利用できないため、30日以上放置されたワークスペースは、バッキングリポジトリに同期されたものからのみ作業を復元することができます。チェックポイントは、セッション間でワークスペースの状態を保存するための安全ネットとして設計されています。チェックポイントを主要な保存形式として依存するべきではありません。ワークスペース内の既存の作業を頻繁に同期することを強くおすすめします。
チェックポイントを復元すると、ワークスペースが再起動され、ホームフォルダがチェックポイントが作成された時点の状態に復元されます。
RStudio® および Shiny® は Posit™ の商標です。
Jupyter®、JupyterLab®、および Jupyter® のロゴは NumFOCUS の商標または登録商標です。
すべての第三者の商標(ロゴやアイコンを含む)は、それぞれの所有者の財産となります。それらとの提携または推薦を示すものではありません。