대화형 웹 터미널
대화형 웹 터미널은 사용자가 GitLab에서 CI 파이프라인을 위한 일회성 명령을 실행할 수 있는 터미널에 접근할 수 있도록 합니다. 이는 SSH를 통한 디버깅 방법과 유사하지만, 작업 페이지에서 직접 수행됩니다. 이는 사용자가 GitLab Runner가 배포된 환경에 대한 셸 접근을 제공하기 때문에, 사용자를 보호하기 위해 몇 가지 보안 예방 조치가 취해졌습니다.
구성
대화형 웹 터미널이 작동하려면 두 가지가 구성되어야 합니다:
- 러너는
[session_server]
가 적절하게 구성되어야 합니다. - GitLab 인스턴스에 리버스 프록시를 사용하는 경우, 웹 터미널은 활성화해야 합니다.
Helm 차트에 대한 부분적 지원
대화형 웹 터미널은 gitlab-runner
Helm 차트에서 부분적으로 지원됩니다.
이들은 다음과 같은 경우에 활성화됩니다:
- 복제본 수가 1일 때
-
loadBalancer
서비스를 사용할 때
이러한 제한 사항을 해결하기 위한 지원은 다음 문제에서 추적됩니다:
실행 중인 작업 디버깅
docker
실행기는 빌드 스크립트가 완료된 후에는 계속 실행되지 않습니다. 그 시점에서 터미널은 자동으로 연결이 끊기며 사용자가 끝날 때까지 기다리지 않습니다. 이 동작 개선에 대한 업데이트는 이 문제를 따르세요.때때로 작업이 실행 중일 때 기대한 대로 진행되지 않을 수 있으며, 이때 디버깅에 도움을 줄 수 있는 셸이 있으면 유용합니다. 작업이 실행 중일 때, 오른쪽 패널에서 현재 작업을 위한 터미널을 여는 debug
버튼 ()을 볼 수 있습니다. 작업을 시작한 사람만이 해당 작업을 디버깅할 수 있습니다.
선택하면 터미널 페이지로 이동하는 새 탭이 열리며, 여기에서 표준 셸처럼 명령을 입력할 수 있습니다.
터미널을 열고 작업이 작업을 완료했다면, 터미널은 [session_server].session_timeout
에서 구성된 기간 동안 작업의 완료를 차단하며, 터미널 창을 닫을 때까지 기다립니다.
웹 IDE를 위한 인터랙티브 웹 터미널
웹 IDE용 인터랙티브 웹 터미널을 실행하려면 웹 IDE를 참조하세요.