リモート開発(無料オールベータ)

フラグ: セルフマネージドGitLabでは、デフォルトでこの機能が利用可能です。この機能を隠すには、管理者がvscode_web_ideという機能フラグを無効にします。GitLab.comでは、この機能は利用可能です。この機能はまだ本番環境では使用できません。

caution
この機能はベータ版であり、予告なく変更される場合があります。

リモート開発を使用して、GitLabでホストされているコードを記述し、コンパイルすることができます。リモート開発では、以下のことができます:

  • クラウド上にセキュリティで保護された開発環境を構築できます。
  • ウェブブラウザやクライアントベースのソリューションを使って、ローカルマシンからその環境に接続します。

フロントエンドとしてのWeb IDE

Web IDEを使用すると、Web ブラウザから直接プロジェクトに変更を加えたり、コミットしたり、プッシュしたりできます。こうすることで、依存関係のインストールやローカルにリポジトリをクローンすることなく、プロジェクトを更新することができます。

しかし、Web IDE には、コードをコンパイルしたり、テストを実行したり、リアルタイムのフィードバックを生成したりできるネイティブの実行環境がありません。リモート開発では、以下を使用できます:

  • フロントエンドとしての Web IDE
  • バックエンドの実行環境としての別マシン

完全なIDEを体験するには、Web IDEをリモートホストとして実行するように設定された開発環境に接続します。この環境はGitLabの内部でも 外部でも作成できます。

ワークスペース

ワークスペースは、GitLabのコードのための仮想サンドボックス環境です:

  • 実行環境
  • 依存関係
  • 設定ファイル

ワークスペースは、ゼロから作成することも、カスタマイズ可能なテンプレートから作成することもできます。

ワークスペースを設定してWeb IDE に接続すると、次のことが可能になります:

  • Web IDEから直接ファイルを編集し、変更をGitLabにコミットしてプッシュできます。
  • Web IDE を使用してテストを実行し、コードをデバッグし、リアルタイムのフィードバックを表示します。

開発環境の管理

開発環境の構築

開発環境を作成するには、次のコマンドを実行します:

export CERTS_DIR="/home/ubuntu/.certbot/config/live/${DOMAIN}"
export PROJECTS_DIR="/home/ubuntu"

docker run -d \
  --name my-environment \
  -p 3443:3443 \
  -v "${CERTS_DIR}/fullchain.pem:/gitlab-rd-web-ide/certs/fullchain.pem" \
  -v "${CERTS_DIR}/privkey.pem:/gitlab-rd-web-ide/certs/privkey.pem" \
  -v "${PROJECTS_DIR}:/projects" \
  registry.gitlab.com/gitlab-org/remote-development/gitlab-rd-web-ide-docker:0.2-alpha \
  --log-level warn --domain "${DOMAIN}" --ignore-version-mismatch

新しい開発環境が自動的に起動します。

開発環境の停止

実行中の開発環境を停止するには、次のコマンドを実行します:

docker container stop my-environment

開発環境の起動

停止した開発環境を起動するには、次のコマンドを実行します:

docker container start my-environment

トークンは開発環境を起動するたびに変更されます。

開発環境の削除

開発環境を削除するには、以下の手順に従います:

  1. 開発環境を停止します。
  2. 次のコマンドを実行します:

    docker container rm my-environment