Koyeb의 PlanetScale 데이터베이스에 응용 프로그램을 연결하는 방법
5621 단어 serverlesstutorialwebdevdatabase
PlanetScale에서 제공하는 내장 기능의 상세하지 않은 목록은 다음과 같습니다.
네이티브 자동 배율: 로드에 따라 기본 리소스 자동 배율
데이터베이스 분기: 클릭하여 데이터베이스 복제본을 만들고 분기에 아키텍처 변경 사항 적용
비차단 모드 변경: 잠금 및 정지 없이 데이터베이스 테이블 업데이트
Google은 Koyeb 응용 프로그램에 공식 PlanetScale
planetscale/pscale-proxy
Docker 이미지를 배치하여 Koyeb 서비스 격자와 발견된 내장 기능을 활용할 것입니다. 이 기능들은 격리되고 안전한 전용 네트워크를 제공하여 응용 프로그램이 PlanetScale 데이터베이스와 안전하게 통신할 수 있도록 합니다.요구 사항
이 자습서를 성공적으로 완료하려면 다음이 필요합니다.
층계
이 설명서를 성공적으로 따르려면 다음 절차를 따르십시오.
PlanetScale 데이터베이스 만들기
먼저 PlanetScale CLI를 사용하여 데이터베이스를 만듭니다.터미널에서 다음 명령을 실행하여
<dbname>
를 사용할 데이터베이스 이름으로 바꿉니다. pscale database create <dbname>
PlanetScale 데이터베이스에 연결하기 위해 서비스 토큰을 사용하여 인증합니다.새 서비스 토큰을 만들려면 터미널 실행 중:$ pscale service-token create
NAME TOKEN
-------------- ------------------------------------------
asd9eeectsti f0d0d1426bf30957f8526d52208a07c08f000000
영패를 안전한 곳에 저장하고 Koyeb에 PlaneScale 에이전트를 배치할 때 다음 섹션에서 영패를 필요로 합니다.데이터베이스에 대한 인증을 정확하게 하기 위해서, 우리는 이전에 만든 서비스 영패에 대해 권한을 부여해야 한다.터미널에서 다음과 같이
<dbname>
를 데이터베이스 이름으로, <tokenname>
를 서비스 토큰으로 바꿉니다.pscale service-token add-access <tokenname> connect_production_branch connect_branch --database <dbname>
이 명령을 실행하면, 우리는 생산 지점과 모든 다른 지점을 연결할 수 있는 서비스 영패 접근권을 부여합니다.서비스 토큰에 대한 자세한 내용은 PlanetScaledocumentation을 참조하십시오.Koyeb에 PlanetScale 에이전트 배포
PlanetScale은 IP 화이트리스트나 SSL 인증서를 수동으로 처리하지 않고도 데이터베이스에 안전하게 연결할 수 있는 에이전트를 제공합니다.Google은 Koyeb 서비스에 PlanetScale 에이전트를 배치하여 관련 데이터베이스에 쉽게 연결할 수 있도록 합니다.
Koyeb 제어판에서 응용 프로그램 만들기 버튼을 클릭합니다.
Docker 이미지 섹션에서 다음을 수행합니다.
docker.io/planetscale/pscale-proxy
에 호스팅된 PlanetScale 프록시 Docker 이미지 사용["--host","0.0.0.0"]
은 로컬포트 섹션에서 내보내기 포트를
80
에서 3306
로 변경하고 프로토콜HTTP
을 TCP
로 변경합니다.Koyeb에서 상태 점검을 수행하고 서비스가 제대로 작동하는지 확인하려면 이 설정이 필요합니다.환경 변수 섹션에서 다음 환경 변수를 생성합니다.
PLANETSCALE_SERVICE_TOKEN
: 이전 섹션에서 만든 PlanetScale 서비스 토큰을 사용합니다.우리는 그것을 저장하기 위해 비밀 환경 변수를 사용하는 것을 강력히 건의합니다.PLANETSCALE_SERVICE_TOKEN_NAME
: 이전 섹션에서 만든 PlanetScale 서비스 토큰의 이름을 사용합니다.Secret 유형의 환경 변수를 사용하여 저장하는 것이 좋습니다.PLANETSCALE_DATABASE
: PlanetScale 데이터베이스의 이름을 사용합니다.PLANETSCALE_BRANCH
: 사용할 PlanetScale 데이터베이스 지점의 이름을 사용합니다. 이 값을 기본 생산 지점main
으로 설정합니다.PLANETSCALE_ORG
: 당신의 PlanetScale 조직의 이름응용 프로그램 이름
planetscale-demo
을 지정하고 응용 프로그램 만들기를 누르십시오.Koyeb 응용 프로그램을 만들고 PlanetScale 프록시 서비스를 실행합니다.
현재, 이 프로그램에 설치된 모든 서비스는 Koyeb 서비스 격자를 사용하고 데이터베이스를 안전하게 연결하는 것을 발견할 수 있습니다.
Koyeb 그리드를 통한 데이터베이스 연결
Koyeb 격자를 사용하여 PlaneScale에 연결하는 방법을 보여주기 위해서 Ghost 블로그 플랫폼을 데이터베이스에 배치합니다.
Koyeb 제어판에서 응용 프로그램으로 이동하고 서비스 만들기 를 클릭합니다.
Docker 이미지에서 Ghost 공식 Docker 이미지
docker.io/ghost
를 사용합니다.포트 섹션에서 포트를
80
에서 2368
로 변경합니다. 이것은 Ghost가 스누핑하는 기본 포트입니다.Koyeb에서 서비스가 어떤 포트를 탐색하고 있는지 알 수 있도록 설정하고 HTTP 요청을 올바르게 전달해야 합니다.경로를 변경할 필요가 없습니다. Ghost는 도메인의 루트 디렉토리에서 사용할 수 있습니다./
.환경 변수 섹션에서 다음 환경 변수를 만들면 Ghost는 이러한 변수를 사용하여 데이터베이스에 연결합니다.
database__client
: 값 포함mysql
database__connection__host
: PlaneScale 에이전트를 실행하는 서비스의 이름, 우리의 예pscale-proxy
database__connection__user
: 값 포함root
database__connection__database
: PlanetScale 데이터베이스의 이름을 사용합니다.ghost-demo
을 지정하고 서비스 만들기 를 클릭합니다.현재 Koyeb 프로그램 URL
<appname>-<orgname>.koyeb.app
으로 이동하면 실행 중인 Ghost 로그인 페이지에 로그인하고 Koyeb mesh 네트워크를 사용하여PlaneScale 데이터베이스에 연결합니다.결론
이 설명서에서는 PlaneScale 프록시를 사용하여 PlaneScale 데이터베이스를 구성, 배포 및 연결하는 방법에 대해 설명합니다.두 가지 서비스를 실행하는 Koyeb 애플리케이션을 구축했습니다.
언제든지 연락 주세요Slack.
Reference
이 문제에 관하여(Koyeb의 PlanetScale 데이터베이스에 응용 프로그램을 연결하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/koyeb/how-to-connect-your-apps-to-a-planetscale-database-on-koyeb-b1m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)