SSH 실행기
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
이 executor는 유지 관리 모드입니다. SSH executor는 완전성을 위해 포함되었지만 지원이 가장 적은 executor 중 하나입니다. SSH 실행기는 Bash로 생성된 스크립트만 지원하며 캐싱 기능은 지원되지 않습니다.
이 executor는 유지 관리 모드입니다. 중요 보안 업데이트는 수신되지만 새 기능은 계획되어 있지 않습니다. 새 프로젝트의 경우 활성 개발 중인 executor 중 하나를 사용하는 것을 고려하세요.
SSH executor는 완전성을 위해 포함되었지만 지원이 가장 적은 executor 중 하나입니다. GitLab Runner는 SSH를 통해 외부 서버에 연결하여 그곳에서 빌드를 실행합니다. 일부 조직에서 이 executor를 성공적으로 사용하고 있지만, 일반적으로 다른 executor 유형을 사용하는 것이 좋습니다.
SSH 실행기는 Bash로 생성된 스크립트만 지원하며 캐싱 기능은 지원되지 않습니다.
이 실행기를 사용하면 SSH를 통해 명령을 실행하여 원격 머신에서 빌드를 실행할 수 있습니다.
GitLab Runner가 SSH 실행기를 사용하는 원격 시스템에서 공통 사전 요구 사항을 충족하는지 확인하세요.
SSH 실행기 사용#
SSH 실행기를 사용하려면, [runners.ssh] 섹션에서 executor = "ssh"를 지정하세요. 예:
[[runners]]
executor = "ssh"
[runners.ssh]
host = "example.com"
port = "22"
user = "root"
password = "password"
identity_file = "/path/to/identity/file"
서버에 대한 인증에 password 또는 identity_file 또는 둘 다를 사용할 수 있습니다. GitLab Runner는 /home/user/.ssh/id_(rsa|dsa|ecdsa)에서 identity_file을 암묵적으로 읽지 않습니다. identity_file은 명시적으로 지정해야 합니다.
프로젝트의 소스는 다음 경로에 체크아웃됩니다:
~/builds/<short-token>/<concurrent-id>/<namespace>/<project-name>.
여기서:
<short-token>은 러너 토큰의 단축 버전입니다 (처음 8글자).<concurrent-id>는 동일한 프로젝트에 대해 동시에 빌드를 실행하는 모든 러너 목록에서의 러너 인덱스입니다 (CI_CONCURRENT_PROJECT_ID사전 정의 변수를 통해 접근 가능).<namespace>는 GitLab에서 프로젝트가 저장된 네임스페이스입니다.<project-name>은 GitLab에 저장된 프로젝트의 이름입니다.
~/builds 디렉토리를 덮어쓰려면 config.toml의 [[runners]] 섹션 아래에서 builds_dir 옵션을 지정하세요.
작업 아티팩트를 업로드하려면 SSH를 통해 연결하는 호스트에 gitlab-runner를 설치하세요.
엄격한 호스트 키 확인 구성#
SSH StrictHostKeyChecking은 기본적으로 활성화되어 있습니다. SSH StrictHostKeyChecking을 비활성화하려면 [runners.ssh.disable_strict_host_key_checking]을 true로 설정하세요. 현재 기본값은 false입니다.
