Pesquisa de site

Como instalar a plataforma de publicação de blogs Ghost (CMS) no CentOS 7


Ghost é um software de blog ou publicação on-line gratuito, de código aberto e simples, mas poderoso, escrito em Nodejs. É uma coleção de ferramentas de publicação modernas projetadas para criar e executar publicações online com facilidade.

Recursos fantasmas:

  • Rápido, escalável e eficiente.
  • Oferece um ambiente de edição baseado em markdown.
  • Vem com um aplicativo de desktop.
  • Vem com lindos modelos de guidão.
  • Suporta gerenciamento simples de conteúdo.
  • Suporta múltiplas funções para autores, editores e administradores.
  • Permite agendar conteúdos com antecedência.
  • Suporta páginas móveis aceleradas.
  • Suporta totalmente a otimização de mecanismos de pesquisa.
  • Fornece dados estruturados detalhados.
  • Suporta assinaturas por RSS, Email e Slack.
  • Permite a edição simples do site e muito mais.

Requisitos:

  1. Uma instalação mínima do servidor CentOS 7 com 1 GB de memória
  2. Um sistema CentOS 7 com endereço IP estático
  3. Node v6 LTS – Instale o Node.js e o NPM mais recentes no CentOS 7
  4. Um servidor CentOS 7 com Nginx instalado

Importante: Antes de começar a instalar o Ghost você mesmo, você precisará ter uma boa hospedagem VPS, recomendamos fortemente o BlueHost.

Neste artigo, explicaremos como instalar uma plataforma de blog Ghost (Content Management System) de código aberto em um sistema CentOS 7.

Etapa 1: instalação do Nodejs no CentOS 7

1. Nodejs não está disponível nos repositórios de software do CentOS, portanto primeiro adicione seus repositórios e depois instale da seguinte forma

curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
yum -y install nodejs npm
dnf -y install nodejs npm   [On Fedora 22+ versions]

2. Depois de instalar o nodejs, você pode verificar se possui a versão recomendada do Nodejs e do npm instalada usando os comandos.

node -v 
npm -v

Etapa 2: Instalando o Ghost no CentOs 7

3. Agora crie o diretório raiz do Ghost que armazenará os arquivos do aplicativo em /var/www/ghost, que é o local de instalação recomendado.

mkdir -p /var/www/ghost

4. Em seguida, baixe a versão mais recente do Ghost do repositório GitHub do Ghost e descompacte o arquivo compactado no diretório que você acabou de criar acima.

curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
unzip -uo ghost.zip -d  /var/www/ghost

5. Agora vá para o novo diretório fantasma e instale o Ghost (somente dependências de produção) com os seguintes comandos. Assim que o segundo comando for concluído, o Ghost deverá ser instalado em seu sistema.

cd /var/www/ghost 
npm install --production

Etapa 3: iniciar e acessar o blog fantasma padrão

6. Para iniciar o Ghost, execute o seguinte comando no diretório /var/www/ghost.

npm start --production

7. Por padrão, o Ghost deve estar rodando na porta 2368, então abra a porta no firewall para permitir o acesso.

firewall-cmd --zone=public --permanent --add-port=2368/tcp
firewall-cmd --reload

8. Agora abra um navegador da web e navegue até qualquer um dos seguintes URLs abaixo.

http://SERVER_IP:2368
OR
http://localhost:2368

Nota: Após executar o Ghost pela primeira vez, o arquivo config.js será criado no diretório raiz do Ghost. Você pode usá-lo para definir a configuração de nível de ambiente para fantasma; onde você pode configurar opções como URL do site, banco de dados, configurações de e-mail, etc.

Etapa 4: instalar e configurar o Nginx para Ghost

Instale e inicie o servidor web Nginx, se não estiver instalado usando o repositório EPEL conforme mostrado.

yum install epel-release
yum install nginx
systemctl start nginx

Se você estiver executando um firewall, use os comandos a seguir para ativar o acesso ao tráfego HTTP e HTTPS.

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

A próxima etapa é configurar o Nginx para servir nosso blog Ghost na porta 80, para que os usuários possam acessar o blog Ghost sem adicionar a porta :2368 no final do URL.

Primeiro pare a instância do Ghost em execução pressionando as teclas CTRL+C no terminal.

Agora configure o Nginx criando um novo arquivo em /etc/nginx/sites-available/ghost.

vi /etc/nginx/sites-available/ghost

Adicione a seguinte configuração e certifique-se de alterar as seguintes linhas destacadas para seu_domínio_ou_endereço_ip.

server {
    listen 80;
    server_name your_domain_or_ip_address;
    location / {
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass         http://127.0.0.1:2368;
    }
}

Salve o arquivo e ative esta configuração criando um link simbólico no diretório /etc/nginx/sites-enabled.

ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/ghost

Agora abra o arquivo /etc/nginx.conf. inclua os arquivos de configuração no diretório sites-enabled e desative o site padrão conforme mostrado.

vi /etc/nginx/nginx.conf

Agora adicione a seguinte linha dentro do bloco http para incluir os arquivos de configuração no diretório sites-enabled.

http {
...
    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

Em seguida, comente totalmente o bloco de servidor padrão encontrado dentro do bloco http.

...

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;


   server {
      listen       80 default_server;
      listen       [::]:80 default_server;
      server_name  _;
      root         /usr/share/nginx/html;
#
      # Load configuration files for the default server block.
      include /etc/nginx/default.d/*.conf;
#
      location / {
      }
#
      error_page 404 /404.html;
          location = /40x.html {
      }
#
      error_page 500 502 503 504 /50x.html;
          location = /50x.html {
      }
...
...

Por fim, salve e reinicie o servidor web nginx.

systemctl restart nginx

Mais uma vez, visite http://your_domain_or_ip_address e você verá seu blog Ghost.

Para obter mais informações, acesse a página inicial do Ghost: https://ghost.org/

Neste artigo, explicamos como instalar e configurar o Ghost no CentOS 7. Use o formulário de comentários abaixo para nos enviar suas dúvidas ou sugestões sobre o guia.

Por último, mas não menos importante, em nosso próximo post, mostraremos como configurar o Ghost no Debian e no Ubuntu. Até então, fique conectado ao linux-console.net.