Como implantar o Ghost no Fedora 25

O Ghost é uma plataforma de blog de código aberto que está ganhando popularidade entre desenvolvedores e usuários comuns desde seu lançamento em 2013. Ele coloca o foco no conteúdo e nos blogs . O mais atraente do Ghost é seu design simples, limpo e responsivo. Você pode escrever as postagens do seu blog usando um telefone celular. O conteúdo do Ghost é escrito usando o idioma Markdown. O Ghost é perfeito para indivíduos ou pequenos grupos de escritores.

Neste guia, vamos configurar e implantar um blog Ghost seguro em um VPS do Fedora 25 usando Let's Encrypt , Certbot , Node.js , Nginx e PM2 .

Exigências

  • Instância do servidor Fedora 25 com no mínimo 1 GB de RAM .
  • Você provavelmente terá que abrir a porta 2368 com semanage port -a -t http_port_t -p tcp 2368.

Vamos criptografar

Antes de iniciar esta etapa, verifique se você definiu registros DNS para o seu domínio.

Vamos usar o Let's Certifot da CA e o cliente Certbot da EFF para obter o certificado TLS para o blog do Ghost. Não se esqueça de substituir todas as instâncias example.compelo seu nome de domínio.

  1. Sistema de atualização:

    dnf check-update || dnf upgrade -y
    
  2. Instale as ferramentas necessárias:

    dnf install @development-tools -y
    
  3. Instale o Certbot (também conhecido como cliente Let's Encrypt):

    dnf install certbot -y
    
  4. Verifique a versão do Certbot:

    certbot --version
    # certbot 0.12.0
    
  5. Obtenha um certificado usando o modo autônomo ”:

    certbot certonly --standalone --domains example.com,www.example.com --email john.doe@example.com --agree-tos --rsa-key-size 2048
    

Após seguir as etapas anteriores, seu certificado e sua chave privada estarão no /etc/letsencrypt/live/example.comdiretório

Instalar o NodeJS

No momento, o Ghost suporta apenas as versões 0.12.x , 4.2+ e 6.9+ do Node .

Vamos instalar a versão suportada para o Ghost que está v6 Boron LTSno momento desta redação.

  1. Baixe e instale a versão LTS mais recente do Node.js:

    dnf install nodejs -y
    
  2. Verifique a versão do nó e do NPM:

    node -v && npm -v
    # v6.10.2
    # 3.10.10
    

Instale o Nginx

  1. Faça o download e instale o Nginx:

    dnf install nginx -y
    
  2. Verifique a versão do Nginx:

    nginx -v
    # nginx version: nginx/1.10.2
    
  3. Inicie e ative o serviço Nginx:

    systemctl start nginx.service && systemctl enable nginx.service
    
  4. Configure o Nginx como um proxy reverso:

    vi /etc/nginx/conf.d/ghost.conf
    
  5. Cole o seguinte em /etc/nginx/conf.d/ghost.conf:

    server {
    
      listen 80;
      listen [::]:80;
      listen 443 ssl http2;
      listen [::]:443 ssl http2;
    
      server_name example.com www.example.com;
    
      ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
      ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
      location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://127.0.0.1:2368;
      }
    
    }
    
  6. Verifique a sintaxe do Nginx:

    nginx -t
    
  7. Recarregue a configuração do Nginx:

    systemctl reload nginx.service
    

Instalar o Ghost

Se você deseja hospedar vários blogs Ghost no mesmo VPS , cada instância do Ghost deve estar em execução em uma porta separada.

  1. Criar webrootdiretório:

    mkdir -p /var/www/
    
  2. Crie um novo usuário fantasma:

    useradd -c "Ghost Application" ghost 
    
  3. Download Ghost:

    curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.8/Ghost-0.11.8.zip -o ghost.zip
    
  4. Descompacte o Ghost:

    unzip -uo ghost.zip -d /var/www/ghost
    rm -f ghost.zip
    
  5. Navegue para o webroot:

    cd /var/www/ghost
    
  6. Altere a propriedade do diretório webroot:

    chown -R ghost:ghost .
    
  7. Alterne para o novo usuário fantasma:

    su - ghost
    
  8. Navegue para o webroot:

    cd /var/www/ghost
    
  9. Instale o Ghost:

    npm install --production
    
  10. Configure o Ghost alterando urle mailpropriedade do productionobjeto dentro do config.jsarquivo:

    cp config.example.js config.js
    vi config.js
    
    
    var path = require('path'),
           config;
    
    config = {
      // ### Production
      // When running Ghost in the wild, use the production environment.
      // Configure your URL and mail settings here
      production: {
        url: 'https://example.com',
        mail: {
          options: {
             service: '',
                auth: {
                  user: '',
                  pass: ''
                }
              }
        },
            . . .
            . . .
        },
    }
    . . .
    . . .        
    

    NOTA : Você mailtambém deve configurar . Consulte a documentação oficial do Ghost sobre como fazer isso.

  11. Inicie o Ghost:

    npm start --production
    

    Agora o Ghost estará em execução. O front-end do blog e a interface administrativa estão protegidos com HTTPS e o HTTP / 2 também está funcionando. Você pode abrir o navegador e visitar o site em https://example.com. Não se esqueça de substituir example.compelo seu nome de domínio.

  12. Encerre o processo do Ghost pressionando CTRL+ Ce saia do usuário fantasma de volta ao usuário root:

    exit
    

Instale o PM2

Se você fechar sua sessão de terminal com seu VPS , seu blog também será desativado. Isso não é bom. Para evitar isso, vamos usar o gerenciador de processos do PM2 . Ele manterá nosso blog atualizado 24 horas por dia, 7 dias por semana.

  1. Instale a versão estável mais recente do gerenciador de processos PM2:

    npm install -g pm2@latest
    
  2. Verifique a versão do PM2:

    pm2 -v
    # 2.4.6
    
  3. Alterne para o usuário fantasma novamente:

    su - ghost
    
  4. Defina NODE_ENVa variável de ambiente para produção:

    echo "export NODE_ENV=production" >> ~/.bashrc && source ~/.bashrc
    
  5. Inicie (daemonize) o aplicativo Ghost com PM2:

    pm2 start /var/www/ghost/index.js --name "Ghost Blog"
    
  6. Navegue https://example.com/ghost/e crie um usuário administrador do Ghost. Faça isso o mais rápido possível.

Conclusão

É isso aí. Agora temos um blog Ghost totalmente funcional. Se você quiser alterar o tema padrão do Ghost chamado Casper para um personalizado, basta baixar e descompactar o tema na /var/www/ghost/content/themespasta e selecioná-lo na interface de administração do Ghost, localizada em https://example.com/ghost.

Deixar um comentário

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.