Lando로 Drupal 개발을 가속화하는 방법

게시 됨: 2023-01-03

요즘에는 DDev 및 DockSal과 같은 많은 개발 환경 옵션이 있지만 일반적으로 몇 가지 이유로 Drupal 설정에 Lando를 권장합니다.

Lando는 작업하기 쉽고 휴대가 간편하며 빠릅니다. 그리고 Lando는 어디에서나 무엇이든 실행할 수 있습니다! 가장 접근하기 쉬운 Devops 도구이며 수년 동안 인기를 얻고 있습니다. Lando를 설명하는 간단한 방법은 자동화된 환경 설정이 더 쉬운 개발을 허용한다는 것입니다.

Drupal을 사용한 Lando 설정

이 기사에서는 Lando, 설정, 아키텍처 및 Lando 구성과 함께 Drupal에서 Lando 레시피를 사용하는 방법에 대해 설명합니다. 자, 시작하겠습니다!

랜도가 뭐야?

Lando는 Docker에 구축된 무료 오픈 소스 로컬 개발 환경 DevOps 도구입니다. OSX, Windows 및 Linux의 로컬 환경과 호환됩니다. Lando를 사용하면 다양한 유형의 서비스와 도구를 손쉽게 준비할 수 있습니다. 또한 Lando를 사용하면 Lando에서 작업하는 다른 프로젝트에 영향을 주지 않고 모든 프로젝트에 대해 서로 다른 서비스를 설정할 수 있습니다.

개발자는 실행해야 하는 애플리케이션 구성뿐만 아니라 서비스 및 도구 코드베이스에서 구성을 설정하는 것이 매우 쉬워집니다. 설정이 완료되면 개발자는 저장소에 들어가 Lando를 실행하고 개발 환경의 일관성을 방해하지 않고 완전히 격리된 상태에서 프로젝트 작업을 시작할 수 있습니다.

Lando는 어떻게 작동하며 왜 사용해야 합니까? (Lando 레시피 및 Drupal)

Lando가 무엇인지, Drupal과의 호환성은 이미 알고 계실 것입니다. 이제 여러분 중 일부는 Docker에 익숙할 수 있으므로 Lando와 Docker가 얼마나 유사한지 궁금할 것입니다. Lando 설정 구성은 Docker Compose와 유사하며 격리된 개발 환경은 Docker 컨테이너와 유사합니다.

그러나 이러한 유사성은 다음과 같은 질문을 제기합니다. Docker를 설치했을 때 Lando의 요점은 무엇입니까? 이유는 다음과 같습니다.

  • Lando는 사전 정의된 레시피의 도움으로 Docker 컨테이너를 사용하는 보다 체계적인 프로세스를 지원합니다.
  • Docker 컨테이너 환경이 Lando 레시피와 호환되지 않는 경우 Lando 서비스를 정의하여 컨테이너를 쉽게 정의할 수 있습니다. docker exec 명령을 입력하거나 Dockerfile을 설정하지 않고도 이 작업을 수행할 수 있습니다.
  • 로컬 개발 네트워킹의 이점을 누리는 동안 Lando 레시피 대신 고유한 사용자 정의 docker 작성 파일을 사용할 수 있습니다.
  • 또한 컨테이너당 SSL 처리를 사용하고, 서비스에 대한 프록시 및 사용자 지정 URL을 설정하고, 간단한 빌드 및 실행 단계를 사용할 수 있습니다.

Drupal 9용 Lando의 시스템 요구 사항 및 설치에 대해 학습하는 데 도움이 필요한 경우 여기에서 당사 블로그를 참조하십시오.

Lando 레시피 구성

레시피는 특정 사용 사례에 대한 정상적인 시작 상태 기본값으로 설계된 서비스, 프록시 및 도구의 조합입니다. Lando의 레시피는 서비스, 이벤트 및 도구의 공통 조합을 포함하는 Lando의 가장 높은 추상화입니다.

서비스는 단순하지만 고도로 구성 가능한 도커 컨테이너입니다. 그들은 PHP 확장 설치 또는 실 설치 실행과 같은 빌드 단계를 실행할 수 있습니다. 도구를 사용하면 호출 시 사용자가 임의의 명령이나 명령 조합 또는 서비스 조합을 실행할 수 있습니다. 사용하기 매우 간단하면서 매우 유용합니다.

구성을 사용하면 레시피가 제공하는 몇 가지 더 중요한 사항을 설정할 수 있습니다. Lando를 사용하면 요구 사항에 따라 구성하고 변경할 수 있습니다.

더 나은 이해를 위해 Lando 서비스 및 도구에 대해 자세히 살펴보겠습니다.

랜도 서비스

Lando 서비스는 단순화되고 고도로 구성 가능한 Docker 컨테이너입니다. 빌드 단계를 실행할 수 있어야 하며 낮은 수준으로 재정의할 수 있습니다. 서비스는 자동 네트워킹 및 보안 기능을 제공합니다.

가장 유용한 서비스는 다음과 같습니다.

  • 엘라스틱서치/솔라
  • 메일호그
  • 마디
  • PhpMyadmin
  • 레디스
  • 멤캐시
  • 광택
랜도 서비스

메일곡

서비스 - 빌드 단계

PHP 확장 또는 노드 모듈과 같은 추가 서버 종속성이 필요한 경우 빌드 단계처럼 들립니다.

네 가지 주요 빌드 단계가 있습니다.

  • "빌드": 서비스가 부팅되기 전에 "귀하"로 실행됩니다.
  • "Build_as_root": 서비스가 부팅되기 전에 루트로 실행됩니다.
  • "run" : 서비스가 부팅된 후 "귀하"로 실행됩니다.
  • "run_as_root": 서비스가 부팅된 후 루트로 실행됩니다.
앱 서버

네 가지 주요 단계를 어떻게 실행할 수 있습니까?

  • 빌드를 사용하여 애플리케이션을 시작하기 전에 필요한 애플리케이션 종속성을 설치합니다.
  • build_as_root를 사용하여 애플리케이션에 필요한 저수준 서버 패키지 설치
  • 실행을 사용하여 애플리케이션 종속성을 설치하거나 애플리케이션을 먼저 시작해야 하는 빌드 단계를 실행합니다.
  • 다른 시작 후 루트 수준의 일회성 설정 명령에는 run_as_root를 사용하십시오.

이벤트

이벤트를 통해 사용자는 Lando 런타임의 특정 부분 전후에 임의의 명령을 실행할 수 있습니다. 간단히 말해서 어떤 일이 발생하기 전이나 후에 자주 또는 항상 실행하는 명령이나 작업을 자동화할 수 있습니다. Lando 및 앱 런타임 이벤트는 사전 또는 사후 이벤트에 연결될 수 있습니다.

모든 도구 명령에 대해 사전 및 사후 이벤트에 연결할 수도 있습니다.

이벤트

Lando 앱용 도구 추가

도구를 사용하면 임의의 서비스에서 임의의 명령을 실행할 수 있습니다. 모든 Lando Drupal 레시피는 유용한 개발 유틸리티와 함께 ​​배송됩니다. 다음과 같이 Lando 도움말 페이지에 표시되는 명령입니다.

  • 랜도 PHP
  • 랜도 mysql
  • Lando DB 가져오기
  • Lando DB 내보내기

여기에서 도구를 사용하여 사용자 지정 명령을 만들고 이러한 명령이 내부적으로 어떤 컨테이너에서 수행할지 정의할 수 있습니다. 이는 또한 특정 서비스를 개발자에게 직접 노출하고 프로세스를 자동화하는 데 도움이 됩니다.

툴링 - lando drupal-check

이 명령을 실행할 때마다 앱 서버 서비스로 이동하여 코드가 Drupal 표준을 따르는지 확인하기 위해 명령을 실행합니다. 그렇지 않은 경우 적절한 오류 메시지가 표시됩니다.

압형

툴링 - lando xdebug-on

이 명령은 디버깅을 위해 앱 서버에서 xdebug-on을 설정하고 활성화합니다.

Xdebug

출처: https://docs.lando.dev/core/v3/

마지막 생각들

Drupal 웹 사이트에 Lando를 설정하면 사용자 정의 서비스 및 레시피를 생성하고 서비스에 특정 도커 이미지를 사용할 수 있습니다. Lando를 사용하면 다양한 서버 구성 및 CI/CD와 통합할 수 있습니다. 또한 Drupal에서 Lando 레시피를 진행하기 위해 테스트를 자동화하는 방법을 배울 수도 있습니다.

Lando와 Drupal은 잘 어울립니다. 그리고 이미 Docker 및 docker compose에 익숙하다면 Drupal 웹 사이트에 Lando를 설정하고 해당 레시피를 사용하여 이벤트, 서비스 및 도구를 결합하는 것이 매우 쉬울 것입니다. 아니면 전문 Drupal 개발 대행사를 고용하여 살펴보도록 할 수 있습니다. Lando 설정 및 Drupal 웹 사이트 개발의 전체 프로세스에 포함됩니다.

이 기사가 유용했습니까? 다음은 복사, 포함 또는 공유할 수 있는 이 기사의 매우 작은 URL입니다.

bit.ly/3WyZNoB

URL을 클립보드에 복사하려면 클릭하세요.