CloudPanel에서 Ghost 설치하기: 공식 가이드 기반 완벽 설치법

CloudPanel 공식 문서를 기반으로 한 Ghost CMS 설치 가이드입니다. Node.js 사이트 생성부터 자동 시작 설정까지 모든 과정을 상세히 설명합니다.

CloudPanel에서 Ghost 설치하기: 공식 가이드 기반 완벽 설치법

CloudPanel에서 Ghost CMS 설치하기

Ghost는 현대적인 퍼블리싱 플랫폼으로, CloudPanel을 통해 간편하게 설치할 수 있습니다. 이 가이드는 CloudPanel 공식 문서를 기반으로 작성되었습니다.

사전 요구사항

Ghost 설치를 시작하기 전에 다음을 준비해주세요:

  • CloudPanel이 설치된 서버
  • 도메인 또는 서브도메인
  • MySQL 데이터베이스 접근 권한
  • SSH 접속 권한

1단계: Node.js 사이트 생성

CloudPanel 웹 인터페이스 사용

  1. CloudPanel에 로그인
  2. + Add Site 클릭
  3. Create a Node.js Site 선택
  4. 다음 정보 입력:
    • Domain Name: 사용할 도메인 (예: www.yourdomain.com)
    • Node.js Version: 18 (권장)
    • App Port: 2368 (Ghost 기본 포트)
  5. Create 버튼 클릭

CloudPanel CLI 사용 (선택사항)

명령줄을 선호한다면 root 사용자로 다음 명령어를 실행:

clpctl site:add:nodejs --domainName=www.domain.com --nodejsVersion=18 --appPort=2368 --siteUser='john-doe' --siteUserPassword='!secretPassword!'

2단계: MySQL 데이터베이스 생성

  1. CloudPanel에서 Databases 메뉴로 이동
  2. Add Database 클릭
  3. 데이터베이스 정보를 생성하고 기록해둡니다:
    • Database Name
    • Database User Name
    • Database User Password

3단계: SSH 접속 및 Ghost CLI 설치

생성된 사이트 사용자로 SSH 접속:

ssh john-doe@server-ip-address

Ghost CLI를 전역으로 설치:

npm install ghost-cli@latest -g

4단계: Ghost 설치

다음 명령어를 실행하여 Ghost를 설치합니다. DATABASE_USERNAME, DATABASE_USER_PASSWORD, DATABASE_NAME, SITE_USER, DOMAIN을 실제 값으로 교체하세요:

ghost install --db mysql --port 2368 \
--dbhost 127.0.0.1 \
--dbuser $DATABASE_USER_NAME \
--dbpass $DATABASE_USER_PASSWORD \
--dbname $DATABASE_NAME \
--process local \
--no-setup-linux-user \
--no-setup-ssl \
--no-setup-nginx \
--dir /home/$SITE_USER/htdocs/$DOMAIN/

5단계: 블로그 URL 설정

설치 과정에서 블로그 URL을 입력하라는 메시지가 나타납니다:

  • https://www.domain.com/ 형식으로 입력

6단계: Ghost 시작

Ghost 시작 확인 메시지에서 Y를 입력하여 Ghost를 시작합니다.

7단계: 관리자 계정 생성

  1. 브라우저에서 설정한 도메인으로 이동
  2. Ghost 환영 페이지가 표시됩니다
  3. 관리자 계정을 생성합니다

8단계: 자동 시작 설정 (중요!)

서버 재부팅 시 Ghost가 자동으로 시작되도록 설정합니다.

스크립트 디렉토리 생성

mkdir ~/scripts/

시작 스크립트 생성

nano ~/scripts/ghost-start.sh

다음 내용을 입력하고 --dir 값을 실제 경로로 수정:

#!/bin/bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
ghost start --dir $HOME/htdocs/ghost.moby.io/ --no-setup-linux-user > $HOME/logs/ghost.log &

실행 권한 설정

chmod 700 ~/scripts/ghost-start.sh

Crontab 설정

crontab -e

SITE_USER를 실제 사이트 사용자명으로 교체하고 다음 라인 추가:

@reboot /home/$SITE_USER/scripts/ghost-start.sh &> /dev/null

9단계: 테스트

서버를 재부팅하고 Ghost가 정상적으로 실행되는지 확인합니다.

CloudPanel의 장점

CloudPanel을 사용한 Ghost 설치의 주요 장점:

  • 간편한 Node.js 환경 관리: 웹 인터페이스를 통한 쉬운 설정
  • 자동 SSL 지원: Let's Encrypt 인증서 자동 발급
  • 모니터링 기능: 실시간 서버 상태 확인
  • 백업 관리: 통합된 백업 솔루션

문제 해결

Ghost가 시작되지 않는 경우

ghost status
ghost logs

데이터베이스 연결 오류

  • 데이터베이스 자격 증명 재확인
  • MySQL 서비스 상태 확인

포트 충돌

다른 포트로 변경:

ghost config --port 2369
ghost restart

성능 최적화 팁

  1. 메모리 최적화: 최소 1GB RAM 권장
  2. 정기 백업: 데이터베이스와 콘텐츠 폴더 백업
  3. 업데이트 관리: Ghost CLI를 통한 정기 업데이트
  4. 캐싱 설정: CloudPanel의 캐싱 기능 활용

결론

CloudPanel을 사용하면 복잡한 서버 설정 없이도 Ghost CMS를 안전하고 효율적으로 운영할 수 있습니다. 공식 문서를 따라 설치하면 안정적인 블로그 환경을 구축할 수 있으며, 자동 시작 설정을 통해 서버 관리 부담을 크게 줄일 수 있습니다.

Ghost의 강력한 에디터와 SEO 기능, 그리고 CloudPanel의 편리한 관리 도구를 활용하여 전문적인 블로그를 운영해보세요.


함께 읽으면 좋은 글

AWS Lightsail에 CloudPanel 설치하기 - 완벽 가이드
AWS Lightsail에 CloudPanel을 설치하여 웹 서버를 효율적으로 관리하는 방법을 단계별로 알아보세요. 초보자도 쉽게 따라할 수 있는 완벽한 설치 가이드입니다.
Ghost 에서 CSS Grid를 활용한 반응형 컨텐츠 레이아웃 최적화 가이드
Ghost CMS의 .gh-canvas 클래스를 활용하여 CSS Grid 기반의 반응형 컨텐츠 레이아웃을 구현하는 방법을 상세히 알아보고, 각 CSS 속성의 역할과 최적화 기법을 살펴봅니다.
Ghost 에서 Google SMTP로 이메일 발송 설정하기
Ghost CMS에서 Google의 SMTP 서버를 활용해 안정적인 이메일 발송 시스템을 구축하는 방법을 단계별로 알아보세요. 뉴스레터, 회원가입 알림, 비밀번호 재설정 등 모든 이메일 기능을 Google SMTP로 완벽하게 설정할 수 있습니다.