자습서: 원격 머신을 Web IDE에 연결하기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated
Self-managed GitLab의 경우, 기본적으로 이 기능을 사용할 수 있습니다. 관리자는 vscode_web_ide라는 피처 플래그를 숨기기 위해 비활성화할 수 있습니다. GitLab.com 및 GitLab Dedicated에서는 이 기능을 사용할 수 있습니다. 이 기능은 아직 프로덕션 환경에 사용하기에 적합하지 않습니다.

이 자습서에서는 다음을 보여줍니다:

  • GitLab 외부에 개발 환경을 생성하는 방법
  • 원격 머신을 Web IDE에 연결하는 방법

웹 IDE에 원격 머신을 연결하려면 다음을 수행합니다:

  1. Let’s Encrypt 인증서 생성을 생성하세요.
  2. 개발 환경을 Web IDE에 연결하세요.

전제 조건

  • root 액세스 권한이 있는 원격 가상 머신
  • 해당 머신으로 해결되는 도메인 주소
  • Docker 설치

Let’s Encrypt 인증서 생성

Let’s Encrypt 인증서를 생성하려면:

  1. A 레코드를 생성하여 도메인을 원격 머신으로 지정합니다 (예: example.remote.gitlab.dev에서 10.0.2.2로).

    note
    도메인에 액세스할 수 없는 경우 DuckDNS와 같은 서비스를 사용할 수 있습니다.
  2. HTTPS를 활성화하려면 Certbot을 설치하세요:

    sudo apt-get update
    sudo apt-get install certbot
    
  3. 인증서를 생성하세요:

    export EMAIL="YOUR_EMAIL@example.com"
    export DOMAIN="example.remote.gitlab.dev"
       
    certbot -d "${DOMAIN}" \
      -m "${EMAIL}" \
      --config-dir ~/.certbot/config \
      --logs-dir ~/.certbot/logs \
      --work-dir ~/.certbot/work \
      --manual \
      --preferred-challenges dns certonly
    
    note
    DuckDNS의 경우 Certbot DNS DuckDNS 플러그인을 사용해야 합니다.

인증서를 생성했으므로 이제 개발 환경을 생성하고 연결해야 합니다.

개발 환경을 Web IDE에 연결

개발 환경을 Web IDE에 연결하려면:

  1. 개발 환경을 생성하세요:

    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
    

    새로운 개발 환경이 자동으로 시작됩니다.

  2. 토큰을 가져오세요:

    docker exec my-environment cat TOKEN
    
  3. 원격 연결을 구성하세요.

원격 연결 구성

Web IDE에서 원격 연결을 구성하려면:

  1. 웹 IDE를 엽니다.
  2. 메뉴 바에서 View > Terminal을 선택하거나 Control+`를 누릅니다.
  3. 터미널 패널에서 원격 연결 구성(Token)을 선택합니다.
  4. 포트를 포함한 원격 호스트의 URL을 입력하세요 (예: yourdomain.com:3443).
  5. 프로젝트 경로를 입력하세요.
  6. 가져온 토큰을 입력하세요.

또는 URL에서 매개변수를 전달하고 웹 IDE에 직접 연결할 수 있습니다:

  1. 다음 명령을 실행하세요:

    echo "https://gitlab-org.gitlab.io/gitlab-web-ide?remoteHost=${DOMAIN}:3443&hostPath=/projects"
    
  2. 해당 URL로 이동하여 가져온 토큰을 입력하세요.

성공했습니다! 이제 개발 환경이 Web IDE에 연결된 원격 호스트로 실행됩니다.

관련 주제