pgai
Ruby gem을 사용한 Database Lab 접근
pgai
젬은 아직 새로운 데이터베이스 랩 인스턴스를 사용하도록 업데이트되지 않았으므로 이 도구를 사용하여 gitlab-production-main
및 gitlab-production-ci
에만 액세스할 수 있습니다.@mbobin은 pgai
Ruby Gem를 만들어 다음과 같은 기능을 지원하는 데이터베이스 클론에 대한 액세스를 크게 단순화했습니다:
- Postgres.ai instances page에 나열된 모든 데이터베이스 클론에 대한 액세스
- 동일한 클론에서 여러
psql
세션
만약 AllFeaturesUser
로 psql
액세스가 있는 경우, pgai
Gem을 구성하려면 아래 단계를 따를 수 있습니다:
-
시작하려면 Postgres.ai instances page에서 몇 가지 값을 모아야 합니다:
- 구성하려는 인스턴스로 이동하고 오른쪽에서 선택합니다.
-
Connection 아래에서 Connect를 선택합니다. 메뉴가 축소된 상태일 수 있습니다.
구성에 필요한 모든 정보가 포함된 대화 상자가 다음 형식으로 표시됩니다:
dblab init --url "http://127.0.0.1:1234" --token TOKEN --environment-id <environment-id>
ssh -NTML 1234:localhost:<environment-port> <postgresai-user>@<postgresai-proxy> -i ~/.ssh/id_rsa
-
다음 스니펫을
~/.ssh/config
에 추가하여 SSH 구성 파일에 넣어 변수 값을 대체합니다:Host pgai-proxy HostName <postgresai-proxy> User <postgresai-user> IdentityFile ~/.ssh/id_ed25519
-
서버 키 지문을 수락하려면 다음 명령을 실행합니다:
ssh pgai-proxy
-
다음 명령을 실행합니다:
gem install pgai # 액세스 토큰 획들하기: https://console.postgres.ai/gitlab/tokens # GITLAB_USER는 GitLab 핸들입니다. pgai config --dbname=gitlabhq_dblab --prefix=$GITLAB_USER --proxy=pgai-proxy # 사용할 인스턴스(이 경우 `main` 데이터베이스 인스턴스)에 대한 해당 포트 값을 https://console.postgres.ai/gitlab/instances 에서 찾습니다 pgai env add --alias main --id <environment-id> --port <environment-port>
-
이 일회성 구성이 완료되면
pgai connect
를 사용하여 특정 데이터베이스에 연결할 수 있습니다. 예를 들어main
데이터베이스에 연결하려면:pgai connect main
-
클론 사용이 완료되었으면 파괴할 수 있습니다:
pgai destroy main