Ubuntu 18.04에 Ghost 설치 방법

Ubuntu 18.04에 Ghost 설치 방법

2022-06-01 last update

13 minutes reading npm blog nodejs ubuntu ghost
Ghost는 노드 위에 구축된 현대 소스 코드 게시 플랫폼입니다.js 플랫폼.완전히 사용자 정의가 가능하고 사용하기 쉬워 거의 0의 학습 곡선으로 내용을 발표할 수 있습니다.이 강좌에서는 Ubuntu 18.04 서버에서 Nginx를 에이전트로 사용하여 안전한 Ghost 블로그를 배포하는 방법을 보여 드리겠습니다. 이것은 Node의 최신 LTS 버전입니다.js와 MySQL/MariaDB는 데이터베이스 백엔드입니다.

선결 조건

본 강좌를 배우는 선결 조건으로 귀하는
  • 공식 Ghost 시스템의 요구에 따라 최소 1G의 RAM이 필요합니다.서버 RAM이 1GB 미만이면 가능create a swap file
    .
  • 은 공용 서버 IP에 대한 도메인 이름입니다.이 강좌에서 우리는 사용할 것이다 example.com.
  • Nginx 설치 방식은 다음과 같습니다How To Install Nginx on Ubuntu 18.04
    .
  • 방화벽 구성은 다음과 같습니다How To Set Up a Firewall with UFW on Ubuntu 18.04
    . 포트 80443 가 열려 있는지 확인합니다.
  • 본 강좌를 계속하기 전에 user with sudo privileges 로 로그인하십시오.
    .

    노드를 설치하고 있습니다.js와 실

    본문을 작성할 때 추천하는 노드.Ghost의 js 버전은 v8 carbon LTS입니다.우리는 노드를 설치할 것이다.NodeSource 저장소의 js입니다.노드에 NodeSource 저장소를 설정합니다.js v8 다음 구성 요소 사용 curl command
    :
    curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
    노드를 설치합니다.입력 js:
    sudo apt install nodejs
    기타 설치 방법에 대해 저희의 How To Install Node.js on Ubuntu 18.04
    지도하다까지 install yarn
    먼저 다음 명령을 사용하여 시스템에 사선 저장소를 활성화합니다.
    curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
    저장소를 활성화한 후 사용:
    sudo apt updatesudo apt-get -o Dpkg::Options::="--force-overwrite" install yarn

    ySQL 설치

    Ghost supportsMySQL 사선 설치
    , MariaDB
    및 SQLite 데이터베이스.이 강좌에서는 Ghost를 운영 모드에서 실행할 때 권장하는 데이터베이스인 MySQL을 사용합니다.다음 명령을 사용하여 MySQL 패키지를 설치합니다.
    sudo apt install mysql-server
    명령을 실행하여 MySQL 설치의 안전성을 높이십시오.
    sudo mysql_secure_installation
    MySQL 사용자 암호의 강도를 테스트하기 위해 mysql_secure_installation 구성을 요구합니다.암호 검증 정책은 세 가지 단계로 나뉜다. 낮음, 중간, 강하다.인증 암호 플러그인을 설정하지 않으려면 VALIDATE PASSWORD PLUGIN 를 누릅니다.다음 프롬프트에서 MySQL 루트 사용자에 대한 암호를 설정해야 합니다.루트 암호를 설정하면 스크립트에서 익명의 사용자를 삭제하고 루트 사용자가 로컬 컴퓨터에 접근하는 것을 제한하며 테스트 데이터베이스를 삭제하도록 요구합니다.모든 질문에 대답해야 합니다 (예).다음으로 Ghost 설치 프로그램이 MySQL 서버에 액세스할 수 있도록 인증 방법을 ENTER 에서 Y 로 변경해야 합니다.이를 위해 루트 사용자로 MySQL 서버에 로그인합니다.
    sudo mysql
    다음 검색을 실행합니다. 이 검색은 auth_socket 방법을 사용할 때 MySQL 루트 사용자에게 비밀번호를 설정합니다.
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_pasword';FLUSH PRIVILEGES;
    강력한 비밀번호 변경 mysql_native_password 을 사용하십시오.

    Ghost CLI 설치

    공식 Ghost CLI 유틸리티를 사용하여 Ghost를 설치합니다.이 유틸리티를 사용하면 단일 명령에서 Ghost를 설치하거나 업데이트할 수 있습니다.(adsbygoogle=window.adsbygoogle | |[]).푸시({});Ghost CLI는 npm 패키지로 제공됩니다.다음 명령은 Ubuntu 시스템에 Ghost CLI를 전체적으로 설치합니다.
    sudo yarn global add ghost-cli

    Ghost 설치 위치 만들기

    권장 설치 위치인 mysql_native_password 디렉토리에서 Ghost를 다운로드하여 설치합니다.디렉터리 유형을 만들려면:
    sudo mkdir -p /var/www/ghost
    디렉터리의 소유권을 사용자로 변경합니다.
    sudo chown $USER:$USER /var/www/ghost
    very_strong_paswordenvironment variable
    사용자 이름을 저장합니다.올바른 디렉토리 설정permissions
    :
    sudo chmod 775 /var/www/ghost

    Ghost 설치

    현재 Ghost CLI를 설치했고 모든 선행 조건이 완료되었으므로 설치를 시작할 수 있습니다./var/www/ghost 디렉토리로 변경합니다.
    cd /var/www/ghost
    설치 실행$USER을 시작하려면 Ghost를 설치하고 구성하려면 Nginx를 reverse proxy
    그리고 무료 let's encrypt SSL 인증서 보호 사이트를 사용합니다.
    ghost install
    ✔ Checking system Node.js version
    ✔ Checking logged in user
    ✔ Checking current folder permissions
    System checks failed with message: 'Linux version is not Ubuntu 16'
    Some features of Ghost-CLI may not work without additional configuration.
    For local installs we recommend using `ghost install local` instead.
    ? Continue anyway? (y/N) y
    
    설치 프로그램은 시스템을 검사하고 경고를 인쇄합니다.계속/var/www/ghost을 입력하고 설치 프로그램에서 Ghost를 다운로드하여 설치합니다.
    ℹ Checking operating system compatibility [skipped]
    ✔ Checking for a MySQL installation
    ✔ Checking memory availability
    ✔ Checking for latest Ghost version
    ✔ Setting up install directory
    ✔ Downloading and installing Ghost v1.24.9
    ✔ Finishing install process
    
    블로그 URL과 MySQL 정보를 설정하라는 메시지가 표시됩니다.ghost install 섹션에 설정된 루트 사용자 이름과 암호를 제공하고 기본 데이터베이스 이름y을 사용합니다.
    ? Enter your blog URL: https://example.com
    ? Enter your MySQL hostname: localhost
    ? Enter your MySQL username: root
    ? Enter your MySQL password: [hidden]
    ? Enter your Ghost database name: ghost_prod
    
    설치 프로그램은 Installing MySQL 이라는 시스템 사용자를 만들고 ghost MySQL 사용자를 만들고 싶은지 물어보고 ghost_prod 를 입력합니다.
    ✔ Configuring Ghost
    ✔ Setting up instance
    Running sudo command: chown -R ghost:ghost /var/www/ghost/content
    ✔ Setting up "ghost" system user
    ? Do you wish to set up "ghost" mysql user? Yes
    ✔ Setting up "ghost" mysql user
    
    다음에 설치 프로그램에서 Nginx를 설정하고 싶은지 물어볼 것입니다.ghost를 입력하여 확인합니다.
    ? Do you wish to set up Nginx? Yes
    ✔ Creating nginx config file at /var/www/ghost/system/files/example.com.conf
    Running sudo command: ln -sf /var/www/ghost/system/files/example.com.conf /etc/nginx/sites-available/example.com.conf
    Running sudo command: ln -sf /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf
    Running sudo command: nginx -s reload
    ✔ Setting up Nginx
    
    Nginx 설정이 완료되면 설치 프로그램에서 SSL 설정 여부를 묻습니다.확인 Yes 을 입력하면 구성 마법사가 전자 메일 주소를 입력하도록 요청하고 도메인에 무료 Let's Encrypt SSL 인증서를 생성하고 Nginx를 구성합니다.
    ? Do you wish to set up SSL? Yes
    ? Enter your email (used for Let's Encrypt notifications) [email protected]
    Running sudo command: mkdir -p /etc/letsencrypt
    Running sudo command: ./acme.sh --install --home /etc/letsencrypt
    Running sudo command: /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt --domain example.com --webroot /var/www/ghost/system/nginx-root --reloadcmd "nginx -s reload" --accountemail [email protected]
    Running sudo command: openssl dhparam -out /etc/nginx/snippets/dhparam.pem 2048
    Running sudo command: mv /tmp/ssl-params.conf /etc/nginx/snippets/ssl-params.conf
    ✔ Creating ssl config file at /var/www/ghost/system/files/example.com-ssl.conf
    Running sudo command: ln -sf /var/www/ghost/system/files/example.com-ssl.conf /etc/nginx/sites-available/example.com-ssl.conf
    Running sudo command: ln -sf /etc/nginx/sites-available/example.com-ssl.conf /etc/nginx/sites-enabled/example.com-ssl.conf
    Running sudo command: nginx -s reload
    ✔ Setting up SSL
    
    다음에 설치 프로그램에서 시스템d 서비스를 설정할 것인지 물어볼 것입니다.입력 Yes 수락, 설치 프로그램은 ghost\u example-com이라는 새로운 시스템d 서비스를 만들고 안내할 때 시작할 수 있도록 합니다.
    ? Do you wish to set up Systemd? Yes
    ✔ Creating systemd service file at /var/www/ghost/system/files/ghost_example-com.service
    Running sudo command: ln -sf /var/www/ghost/system/files/ghost_example-com.service /lib/systemd/system/ghost_example-com.service
    Running sudo command: systemctl daemon-reload
    ✔ Setting up Systemd
    
    마지막으로 설치 프로그램은 데이터베이스를 설정하고 ghost를 시작할 것인지 묻고 Yes 를 입력하십시오.
    Running sudo command: /var/www/ghost/current/node_modules/.bin/knex-migrator-migrate --init --mgpath /var/www/ghost/current
    ✔ Running database migrations
    ? Do you want to start Ghost? Yes
    Running sudo command: systemctl is-active ghost_example-com
    ✔ Ensuring user is not logged in as ghost user
    ✔ Checking if logged in user is directory owner
    ✔ Checking current folder permissions
    Running sudo command: systemctl is-active ghost_example-com
    ✔ Validating config
    ✔ Checking folder permissions
    ✔ Checking file permissions
    ✔ Checking content folder ownership
    ✔ Checking memory availability
    Running sudo command: systemctl start ghost_example-com
    ✔ Starting Ghost
    Running sudo command: systemctl is-enabled ghost_example-com
    Running sudo command: systemctl enable ghost_example-com --quiet
    ✔ Starting Ghost
    You can access your publication at https://example.com
    Next, go to your admin interface at https://example.com/ghost/ to complete the setup of your publication
    
    Ghost uses direct mail by default
    To set up an alternative email method read our docs at https://docs.ghost.org/docs/mail-config
    

    그림자 재설정 완료

    브라우저를 열고 Y Ghost 관리 인터페이스로 이동하면 를 시작하려면 Yes 단추를 클릭합니다.자세한 내용을 입력하고 https://example.com/ghost/ 버튼을 클릭하면 계정 만들기 화면으로 리디렉션됩니다. 여기에서 블로그 제목, 계정 전체 이름, 이메일 주소 및 암호를 입력해야 합니다: . 이 화면에서 파트너 이메일 주소를 입력해야 합니다.링크를 클릭하면 Ghost dashboard로 리디렉션됩니다. 여기서 새 게시물을 만들고 사용자를 추가하고 Ghost 설정을 변경할 수 있습니다.

    결론

    이 강좌에서 생산 준비된 Ghost 인스턴스를 설치하는 방법을 배웠습니다.지금 방문하셔야 합니다Ghost Help
    페이지에서 Ghost 설치를 관리하는 방법에 대한 자세한 내용을 참조하십시오.또한 액세스 가능Ghost Marketplace
    유령 주제를 발견한다.