ServBay 로컬 개발 환경에서 Drupal 설치 및 구성하기
개요
Drupal은 매우 강력하고 유연하며 확장 가능한 오픈소스 콘텐츠 관리 시스템(CMS)으로, 개인 블로그와 중소기업 웹사이트부터 대규모 기업 포털, 복잡한 웹 애플리케이션 구축에까지 폭넓게 활용됩니다. 콘텐츠 관리 도구가 풍부하고, 세밀한 사용자 권한 제어와 강력한 모듈화 아키텍처를 제공해 높은 수준의 커스터마이징 및 성능을 요구하는 개발자에게 적합합니다.
ServBay는 macOS 전용으로 설계된 로컬 웹 개발 환경 툴입니다. Caddy, Nginx 같은 주요 웹 서버, PHP, Node.js, Python, Go, Java 등의 다양한 언어 런타임, MySQL, PostgreSQL, MongoDB, Redis와 같은 데이터베이스, 그리고 Composer, npm 등 핵심 개발 도구를 통합 제공합니다. ServBay에서 Drupal을 설치 및 구성하면, 안정적이고 편리하며 기능이 풍부한 로컬 개발 플랫폼을 손쉽게 갖출 수 있습니다.
본 문서는 ServBay 환경에서 Drupal 설치 및 구성법을 단계별로 자세히 안내하여, 로컬 개발 환경에서 Drupal 프로젝트를 신속하게 시작하는 데 도움을 드립니다.
사전 준비 사항
Drupal 설치 전 아래 내용을 반드시 확인하세요.
- ServBay 설치 및 실행: macOS에 ServBay가 정상적으로 설치되어 실행 중이어야 합니다.
- 기본적인 ServBay 사용법 숙지: ServBay UI에서 패키지 관리, 사이트 추가, phpMyAdmin 등 내장 도구 접속 방법을 이해하고 있어야 합니다.
- PHP와 MySQL/MariaDB 설치 상태 확인: ServBay에는 기본적으로 여러 버전의 PHP와 MySQL 또는 MariaDB가 포함되어 있습니다. 사용하고자 하는 PHP 버전 활성화 및 데이터베이스 서비스가 실행 중인지 확인하세요.
- Composer 설치: ServBay에는 Composer가 기본 통합되어 있어 별도 설치가 필요 없습니다. 본 가이드에서는 Composer로 Drupal 프로젝트를 생성합니다.
Drupal 설치 단계
ServBay에서 Drupal을 설치 및 구성하는 과정을 아래와 같이 따라하세요:
1단계: 프로젝트 디렉토리 생성
먼저, Drupal 프로젝트를 위한 전용 하위 폴더를 ServBay 웹사이트 루트 디렉토리인 /Applications/ServBay/www
아래에 생성합니다.
터미널을 열고 다음 명령어를 입력하세요:
bash
cd /Applications/ServBay/www
mkdir servbay-drupal-app
cd servbay-drupal-app
1
2
3
2
3
이렇게 하면 /Applications/ServBay/www
경로 하위에 servbay-drupal-app
폴더가 생성되고, 해당 폴더로 이동됩니다.
2단계: Composer로 Drupal 프로젝트 생성
ServBay에는 Composer가 이미 내장되어 있어 추가 설치가 필요 없습니다. Drupal 공식 권장 방식인 Composer로 프로젝트와 의존성을 관리하세요.
servbay-drupal-app
폴더 내에서 다음 명령어를 실행하세요:
bash
composer create-project drupal/recommended-project .
1
이 명령은 drupal/recommended-project
템플릿을 사용하여, 현재 디렉토리(.
) 하위에 새로운 Drupal 프로젝트 구조를 세팅합니다. Composer가 Drupal 핵심 파일 및 필요한 의존성 패키지를 자동으로 다운로드하며, 네트워크 속도에 따라 시간이 다소 소요될 수 있습니다.
drupal/recommended-project
템플릿은 모든 퍼블릭 접근 파일(예: index.php
, CSS, JavaScript 등)을 web
이라는 하위 폴더에 위치시킵니다. 이는 최신 Drupal 프로젝트의 표준 구조로 보안성이 높습니다.
3단계: 데이터베이스 및 사용자 생성
Drupal은 콘텐츠, 설정, 사용자 데이터를 보관할 데이터베이스가 필요합니다. ServBay의 내장 phpMyAdmin을 활용해 데이터베이스와 전용 사용자 계정을 생성할 수 있습니다.
ServBay의 phpMyAdmin 접속
웹 브라우저에서 ServBay 기본 대시보드 주소인
https://servbay.host/
로 이동합니다. 대시보드에서 ‘phpMyAdmin’ 링크를 찾아 클릭하세요(일반적으로 “도구”, “데이터베이스” 섹션에 위치).servbay.host
는 로컬 개발을 위한 ServBay 전용 도메인으로, ServBay 내부 관리화면과 연결되어 있습니다.데이터베이스 사용자 만들기
보안 및 권한 관리를 위해 Drupal 프로젝트에만 사용할 별도의 데이터베이스 사용자를 생성할 것을 권장합니다.
- 사용자 계정 페이지로 이동: phpMyAdmin 메인 화면에서 상단 메뉴의 ‘사용자 계정’을 클릭합니다.
- 새 사용자 추가: ‘사용자 계정 추가’ 버튼 클릭.
- 사용자 정보 입력:
- 사용자명: 예시로
drupal_user
등 원하는 계정명을 입력하세요. - 호스트명: ‘localhost’ 선택 또는 직접 입력(오직 로컬에서만 접속 가능해 보안 강화).
- 비밀번호: 강력한 비밀번호를 입력하세요. 예제의
password123
은 참고용일 뿐, 실제 개발에서는 비밀번호 생성기를 활용해 꼭 복잡하게 만드세요. - 재입력: 한번 더 비밀번호를 입력해 확인합니다.
- 사용자명: 예시로
- 데이터베이스 권한: ‘사용자명을 데이터베이스 이름으로 하는 데이터베이스를 생성하고 모든 권한을 부여’ 항목을 선택하세요. 이 기능 덕분에 사용자(
drupal_user
)와 동일한 이름의 데이터베이스가 자동 생성되고, 새로 만든 사용자 계정에 그 데이터베이스의 모든 권한이 부여됩니다. - 글로벌 권한: 필요하지 않다면 ‘모든 권한 부여’는 체크하지 마세요(해당 DB에서만 권한 필요).
- 실행: 입력한 내용을 확인한 후, 페이지 우하단의 ‘실행’ 버튼을 누릅니다.
이제
drupal_user
라는 이름의 데이터베이스와 동일한 명칭의 사용자 계정이 생성되었으며, 해당 DB 접근에 모든 권한이 부여됩니다.
4단계: 웹 서버 설정(ServBay에서 사이트 추가)
이제 ServBay 내에서 로컬 도메인과 Drupal 프로젝트의 web
폴더를 연결하는 사이트 구성을 만듭니다.
- ServBay UI 실행: ServBay 애플리케이션의 UI를 엽니다.
- 새 사이트 추가: 좌측 네비게이션에서 ‘사이트’ 탭 선택.
- 추가 버튼 클릭: 사이트 목록 하단의 ‘+’ 또는 유사한 추가 버튼 클릭.
- 사이트 정보 입력:
- 이름: 알아보기 쉬운 사이트 이름 입력(예:
My Drupal Site
). - 도메인: 로컬에서 접근할 도메인명 입력(예:
servbay-drupal.local
). ServBay는.local
도메인을 지원하므로 별도 hosts 파일 편집 없이 사용할 수 있습니다. - 사이트 타입: ‘PHP’ 선택.
- PHP 버전: 원하는 Drupal 버전에 맞는 PHP 버전 선택. 지원 버전은 Drupal 공식 문서를 미리 확인하세요.
- 사이트 루트 디렉토리: Drupal 진입 파일(
index.php
)이 위치한 하위폴더를 지정해야 합니다. Step 2에서 언급한 대로web
폴더가 사이트 루트가 되며, 경로 예시는/Applications/ServBay/www/servbay-drupal-app/web
입니다.
- 이름: 알아보기 쉬운 사이트 이름 입력(예:
- 설정 저장: 모든 정보를 입력한 후 ‘저장’ 버튼을 누르면, ServBay가 자동으로 웹 서버 세팅을 적용, 반영합니다.
5단계: Drupal 설치 마법사 실행
이제 브라우저로 로컬 도메인 접근 시 Drupal 설치 마법사가 진행됩니다.
설치 페이지 접속
웹 브라우저에서 Step 4에서 설정한 도메인 뒤에
/core/install.php
경로를 붙여 접속하세요:https://servbay-drupal.local/core/install.php
Drupal 설치 안내 화면이 표시됩니다.
언어 선택
Drupal 사이트의 기본 언어를 선택하고 ‘저장 및 계속’을 클릭하세요.
설치 구성 선택
원하는 설치 유형을 선택합니다. 보통 ‘표준’ 설치를 선택하면 주요 기능이 활성화된 기본 사이트 구성이 적용됩니다. ‘저장 및 계속’ 클릭.
데이터베이스 정보 입력
설치 마법사 요구에 따라 Step 3에서 생성한 데이터베이스 정보를 입력하세요.
- 데이터베이스 종류:
MySQL, MariaDB, Percona Server 또는 equivalent
선택. - 데이터베이스 이름:
drupal_user
(생성한 DB명과 동일) - DB 사용자명:
drupal_user
- DB 비밀번호: Step 3에서 설정한 비밀번호
- DB 호스트:
localhost
- 고급 옵션: 기본값 유지(비표준 포트, 설정이 아닌 이상 수정 불필요)
입력을 마친 뒤 ‘저장 및 계속’을 클릭하면 Drupal이 DB 연결 및 초기 데이터 입력을 시도합니다.
- 데이터베이스 종류:
사이트 정보 입력
데이터베이스 설정이 완료되면 사이트 기본 정보를 입력합니다.
- 사이트 이름: 사이트 타이틀
- 사이트 이메일: 알림 등 발송 시 사용할 이메일
- 관리자 사용자명: Drupal 관리자로 로그인할 계정명
- 관리자 비밀번호: 보안을 위해 복잡한 비밀번호 설정
- 국가/지역, 시간대: 지역 및 표준 시간대 설정
정보 입력 후 ‘저장 및 계속’을 클릭하면 Drupal이 필요한 설정 파일 및 기본 정보를 최종 마무리합니다.
설치 완료
설치가 끝나면 새 Drupal 홈페이지로 자동 이동합니다. 축하합니다! ServBay 환경에 Drupal이 성공적으로 셋업되었습니다.
6단계: 모듈 및 테마 설치(기초)
Drupal의 가장 큰 강점은 다양한 모듈과 테마 생태계입니다. 설치 후 필요에 따라 원하는 기능과 디자인을 자유롭게 확장하세요.
- Drupal 관리자 로그인:
https://servbay-drupal.local/user
또는https://servbay-drupal.local/admin
에서, Step 5에서 설정한 관리자로 로그인합니다. - 모듈 설치: 로그인 후 관리 메뉴의 ‘확장(Extend)’으로 이동해 새 모듈을 검색, 설치해 사이트 기능을 강화할 수 있습니다.
- 테마 설치: ‘외관(Appearance)’ 메뉴에서 새로운 테마를 설치, 적용해 사이트의 UI/UX를 커스터마이즈 하세요.
설치 후 추가 설정 및 활용
Drupal 설치 후 바로 활용할 수 있는 주요 관리자 기능을 소개합니다.
콘텐츠 타입 및 콘텐츠 만들기
Drupal의 근간은 콘텐츠 타입입니다. 기사, 페이지 등 각기 다른 데이터 구조를 정의할 수 있습니다.
- 콘텐츠 타입 생성: 관리자 메뉴의 ‘구조’ → ‘콘텐츠 타입’에서, 기존 타입을 편집하거나 ‘콘텐츠 타입 추가’로 새 타입 생성 후, 제목, 본문, 이미지 등 필드 정의.
- 콘텐츠 작성: ‘콘텐츠’ → ‘콘텐츠 추가’에서 생성한 타입을 선택, 필드 내용 입력 후 ‘저장 및 게시’ 클릭.
내비게이션 메뉴 구성
메뉴는 사이트 주요 링크를 사용자에게 제공합니다.
- 메뉴 생성: ‘구조’ → ‘메뉴’에서 새 메뉴 생성 또는 기존 메뉴 편집.
- 메뉴 항목 추가: 메뉴 선택 후 ‘링크 추가’ 버튼을 눌러, 메뉴명과 경로(내부:
/node/1
혹은 외부 URL) 입력 후 저장.
커스텀 블록 레이아웃
블록은 사이드바, 푸터 등 웹페이지 특정 영역에 표시되는 커스텀 콘텐츠 단위입니다.
- 블록 추가: ‘구조’ → ‘블록 배치’ 페이지에서 현 테마의 영역별 블록 목록을 확인, 네비게이션/커스텀 콘텐츠 블록 등을 원하는 위치로 드래그.
- 블록 설정: 영역 내 블록 옆 ‘설정’ 클릭 후, 블록명, 표시 페이지, 사용자 권한 등 세부 옵션을 조정할 수 있습니다.
참고사항 및 자주 묻는 질문(FAQ)
- PHP 설정 변경 방법? Drupal에서 특정 PHP 확장 또는 메모리 제한(
memory_limit
) 조정이 필요할 경우, ServBay UI의 ‘패키지’ 탭에서 해당 PHP 버전을 찾아 설정 버튼을 클릭해php.ini
파일을 편집하세요. 이후 PHP 서비스를 재시작해야 하며(ServBay에서 자동 처리 또는 안내 제공), 변경 사항이 반영됩니다. - 사이트 접속 불가 시
- ServBay 프로그램이 실행 중인지 확인
- ServBay에 추가한 사이트 정보(특히 도메인, 사이트 루트)가 올바른지 검토(반드시
.../servbay-drupal-app/web
연결) - ServBay 웹 서버(Caddy 또는 Nginx)가 정상 작동 중인지 확인
- 주소창에
https://servbay-drupal.local
및 상세 경로(/core/install.php
)가 올바른지 재확인
- 데이터베이스 연결 실패 시
- Drupal 설치 도중 입력한 DB명, 사용자명, 비밀번호가 phpMyAdmin에서 생성한 정보와 일치하는지 확인
- DB 호스트는 반드시
localhost
로 설정 - ServBay의 MySQL/MariaDB 서비스가 실행 중인지 체크
- Composer 의존성 설치 오류 시 네트워크가 정상인지 확인하고, Composer가 packagist.org에 접근 가능한지 체크하세요. 때로는 Composer 캐시를 지우거나 내장 Composer를 최신으로 업데이트해야(ServBay는 최신 Composer를 주기적으로 내장 업데이트합니다).
- 파일 권한 에러 Drupal은 설치 및 운영 중 특정 폴더(
web/sites/default/files
,web/sites/default/settings.php
등)에 대한 쓰기 권한이 필요합니다. ServBay는 기본적으로 현재 macOS 사용자 권한에서 실행되므로 별도 문제없이 처리되나, 쓰기 오류 발생 시 해당 폴더의 퍼미션을 확인하세요.
마무리
이 가이드의 모든 과정을 따라 했다면, ServBay 로컬 개발 환경에서 Drupal이 완벽히 설치 및 작동하게 됩니다. ServBay는 Drupal 개발에 필수적인 모든 요소가 통합된 효율적이고 강력한 플랫폼을 제공해줍니다. 이제 Drupal의 다양한 기능을 바탕으로 직접 웹사이트를 구축할 수 있으며, ServBay 내에서 마음껏 개발·테스트·디버깅을 진행할 수 있습니다. Drupal을 깊이 활용할수록 ServBay의 유연성은 여러 PHP 버전, 데이터베이스 및 서비스 관리에 강한 이점을 제공해 프로젝트 요구에 효과적으로 대응할 수 있습니다.