IBM 클라우드로 구축: Drupal 8 웹 사이트 구축

나는 최근에 IBM의 클라우드 서비스에 대해 알게 되었고, 그것에 관한 글을 한 편 써 보기로 결정했다.나의 목표는 매우 간단하다.IBM의 모든 PaaS 제품을 사용하여 기본적인 Wordpress 블로그를 만들 것입니다.저는Azure에 익숙하기 때문에 IBM의Azure 앱 서비스에Wordpress 블로그를 개설하려고 합니다.Wordpress 블로그는 관리되는 MySQL 데이터베이스 서비스와 연결하고 통신합니다.
너는 아마도 이미 이 문장의 제목에서 일이 계획대로 진행되지 않았다는 것을 알아차렸을 것이다.IBM은 현재 MySQL 관리 서비스를 제공하지 않습니다.가상 서버를 쉽게 설정하고 MySQL을 설치할 수 있지만 데이터베이스 관리를 처리하는 것을 좋아하지 않습니다.나는 복제, 백업, 확장 등 일을 처리하기 쉽기 때문에 위탁 관리 데이터베이스 제품을 사용하는 것을 더욱 좋아한다.

좋은 부분


뛰어난 사용자 환경


IBM 클라우드 서비스의 사용자 체험은 내가 사용하고 테스트한 모든 클라우드 서비스 중 가장 좋은 것이다. 이 점에서 나는 모든 GCP, AWS,Azure를 테스트했다.나는 내가 제공한 서비스의 원가가 얼마나 쉬운지 추산하는 것을 곧 좋아한다.IBM은 직관적이고 내비게이션이 쉬운 플랫폼을 만드는 데 매우 뛰어나다고 생각한다.클라우드 서비스 경험이 있다면 IBMcloud의 UI는 쉽게 들어갈 수 있습니다.

간단한 계좌 계산서


IBM은 lite 계정이라는 개념을 가지고 있습니다.lite 계정은 IBM 클라우드에 등록할 때 기본적으로 받는 계정입니다. 일부 무료/lite 서비스에 접근할 수 있습니다.이러한 서비스의 기능은 매우 제한되어 있다. 사실상, 만약 나의 계좌를 현금지불계좌로 업그레이드하지 않는다면, 나는 위탁관리PostgreSQL 서비스를 제공할 수 없다.
즉, 나는 이 두 가지 계정 유형 간의 뚜렷한 차이와 lite 계정이 사용할 수 있는 서비스를 선별하는 것이 얼마나 쉬운지 좋아한다.

안 좋은 부분.


MySQL 제품을 위탁 관리하지 않았다는 사실은 IBM의 PostgreSQL 데이터베이스 제품만 사용할 수 있다는 것을 쉽게 의미한다.
이 점에서 제3자 schematics 제품이 IBM의 클라우드 환경에 있는 기존 Kubernetes 그룹에 MySQL을 제공하지만 이런 제품의 설정에 필요한 작업은 본고에서 IBM의 클라우드 환경을 테스트할 때 하고 싶은 것보다 많다.만약 당신이 Kubernetes에 익숙하다면, 약간의 번거로움을 개의치 않을 것입니다. IBM Cloud 디렉터리의 많은 제3자 설명도를 사용하여 MySQL,Wordpress, Drupal 등의 내용을 제공할 수 있습니다. 저는 Kubernetes에 익숙하지 않기 때문에 이것은 제 선택이 아닙니다.

구름주조공장


Drupal은 PostgreSQL과 호흡이 잘 맞고 IBM에 위탁 관리되는 PostgreSQL 서비스가 있기 때문에 Drupal 사이트를 설치하기로 결정했습니다.IBM은 애저에 해당하는 애플리케이션 서비스를 클라우드 파운드리라고 부른다.Cloud Foundry는 PHP, 자바, 루비 등 다양한 언어로 작성된 프로그램을 실행하기 위해 환경을 미리 설정합니다. 이 중 일부는 IBM에서 관리하고, 다른 환경은 개발자 커뮤니티에서 관리합니다.

Drupal 코드를 Cloud Foundry로 밀어넣기가 쉽습니다.하지만 Drupal은 클라우드 Foundry PHP 설정에서 기본적으로 설치되지 않은 일부 PHP 확장을 사용해야 하기 때문에 클라우드 Foundry에 이러한 확장을 설치하는 방법이 필요합니다.저는 당신이 실제로 ssh를 통해 클라우드 파운드리 환경에 들어갈 수 있다는 것을 알게 되어 매우 기쁩니다.
UI 또는 IBM Cloud의 CLI 도구를 사용하여 ssh를 Cloud Foundry에 연결할 수 있습니다.CLI 도구를 사용하려면 Cloud Foundrycf 플러그인을 설치해야 합니다. 일부 이유로 이 플러그인은 ibmcloud CLI에서 기본적으로 사용할 수 없습니다.

불행하게도, 나는 일반 사용자의 신분으로 ssh로 클라우드 파운드리에 들어갈 수 있지만, 이 사용자는 sudo 접근 권한이 없기 때문에 필요한 PHP 확장자를 설치할 수 없다.클라우드 파운드리 공공장소에서는 sudo 접근 권한을 얻지 못한다는 것도 알게 되었다.추천하지 않는 기업 클라우드 주조 제품이 있습니다. sudo 접근 권한을 얻을 수 있지만...내가 말한 대로 찬성하지 않는다.

코드 엔진


그래서 클라우드 파운드리가 아웃됐어요.IBM cloud에는 컨테이너 이미지를 실행하는 데 사용되는 Code Engine이라는 또 다른 PaaS 제품도 있습니다.Docker Hub Drupal 이미지를 코드 엔진으로 실행하려고 했지만, 설정이 계속 실패했습니다. 왜 실패했는지 모르겠습니다.나는 내가 만든 Drupal 프로젝트에 생성된 공공 URL을 방문했는데, 이 URL은 계속 불러오고...이것은 거의 순환에 끼인 것과 같다. 나는 용기에 문제가 있다고 생각하지 않는다. 왜냐하면 나는 로컬 기기에서 Drupal docker 용기를 실행할 수 있기 때문에 아무런 문제가 없다.

Classic 가상 서버


나는 최종적으로 가상 서버를 제공해야 한다. 그곳에서 나는 PHP 설치에 필요한 모든 특권, 필요한 PHP 확장, 마지막으로 Drupal 자체를 가지고 있다.IBM은 클라우드에 여러 종류의 가상 및 베어 메탈 서버 제품을 보유하고 있습니다.그 중 몇 가지를 설정해 보았는데, 최종적으로 '고전적인 가상 서버를 위한' 제품을 얻었다. 왜냐하면 가장 복잡하지 않은 설치와 설치이기 때문이다. ssh
서버를 설정한 후, 나는 ssh 서버에 들어가서 내가 하고 싶은 일을 할 수 있다.나는 마침내 그 위에 Drupal 8과 Apache를 설치할 수 있다.하지만 가장 이상한 일이 계속 벌어지고 있다.일정 시간이 지나면 예를 들어 2시간이 지나면 서버는 disconnected 상태를 받게 되고 공공 IP와 URL이 내가 설치한 Drupal 사이트를 적극적으로 보여줄 때 나는 ssh에 서버에 들어갈 수 없다.나는 서버를 몇 번이나 파괴하고 만들었는데, 무슨 일이 일어났는지 알아보려고 했지만, 아직 정확히 알지 못했다.맨날 그래.몇 시간 후에 서버가 연결을 끊을 것입니다. ssh 접근을 잃을 것입니다.

PostgreSQL 호스팅


IBM Cloud의 PostgreSQL 위탁 관리 제품은 이상적인 상황에서 본문의 좋은 부분에 나타나야 하지만 이것은 나의 이야기 구조를 파괴할 수 있기 때문에...여기요.
IBM의 관리형 PostgreSQL은 쉽게 설치할 수 있습니다.설치하려는 PostgreSQL 버전을 선택하는 것은 매우 쉽습니다.그들은 9.5판부터 12판본이 있다.데이터베이스 증거는 쉽게 찾고 변경할 수 있다.공공과 사유 단점은 쉽게 찾을 수 있고 공공 단점을 통해 제품에 연결하는 것은 나에게 매우 쉽다.이상적인 상황에서 나는 PostgreSQL 서비스의 개인 노드를 통해 내가 이전에 설정한 가상 서버에서PostgreSQL 서비스에 연결하는 방법을 찾아야 한다. 그러나 나는 게으르기 때문에...

결어


내가 이 글을 쓰려고 준비할 때, 나는 할 수 없다.나는 최종적으로PostgreSQL 데이터베이스로Wordpress 사이트를 구축하는 것이 아니라 기본적인 Drupal 사이트를 만들었다.그럼에도 불구하고, 나는 IBM 클라우드에 대한 경험이 사실 매우 즐겁다. 특히 나는 이전에 그것을 사용한 적이 없기 때문이다.그들의 많은 서비스가 여전히 테스트 단계에 있으니, 나는 그들이 앞으로 몇 개월 내에 얼마나 좋을지 검사할 것이다.

기술 노트 및 문서 링크


이 프로세스에 사용되는 서비스/도구를 사용하는 것에 관심이 있다면 다음과 같은 몇 가지를 기억하십시오.
  • Drupal 8은 PostgreSQL 9과 손쉽게 협업해 사용할 수 있다.더 높은 버전의 PostgreSQL과 함께 사용하려면 추가 설정과 설정이 필요합니다.나는 왜 내가 최신 버전인 Drupal 9이 아닌 Drupal 8을 선택했는지 기억이 나지 않는다.하지만 나는 이것이 이유가 있다고 믿는다.
  • Drupal 실행에 필요한 PHP 확장에 대한 전체 목록은 Drupal composer의 ext-* 항목을 참조하십시오.jsonClick Here
  • 가상 서버에 아파치 뒤에 있는 Drupal을 설치하려면 아파치 리셋 모듈을 사용하고 아파치 사이트 설정 파일에 리셋 규칙을 추가해야 합니다
  • <Directory /var/www/your_drupal_site>
         RewriteEngine On
         RewriteBase /
         RewriteCond %{REQUEST_FILENAME} !-f
         RewriteCond %{REQUEST_FILENAME} !-d
         RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
    </Directory>
    
  • IBM Cloud CLI 도구 설치 설명서Click Here
  • IBM Cloud CLI 도구의 Cloud Foundry 플러그인 설치를 위한 문서Click Here
  • Cloud Foundry 시작 문서Click Here
  • 좋은 웹페이지 즐겨찾기