Como configurar um fluxo de trabalho Drupal no cPanel com Git - OSTraining

Publicados: 2022-06-29

Ao contrário de outros CMSs, a atualização do núcleo do Drupal não é difícil, mas de alguma forma complicada por causa de todos os detalhes envolvidos. Neste tutorial, vamos implementar uma instalação local do Drupal 9 e, em seguida, faremos o upload (push) dessa base de código para um repositório central no Bitbucket. Vamos então baixar (puxar) a base de código deste repositório para o servidor ativo, onde o site será armazenado.

Usando esse processo (orientado ao terminal), você poderá acelerar as atualizações do núcleo e do módulo do Drupal e seguirá as práticas recomendadas.

Supõe-se que você já tenha uma pilha LAMP instalada em seu sistema. Além disso, você precisa de acesso ao terminal em seu servidor web.

Continue lendo para saber como!

Etapa 1: instalar o Drupal 9 localmente

Abra o aplicativo Terminal do seu sistema e coloque o cursor no diretório do servidor local, normalmente /var/www/html em um sistema Linux.

  • Tipo : composer create-project drupal/recommended-project my_drupal

Isso fará o download da versão estável mais recente do Drupal para sua máquina.

  • Tipo :
 cd my_drupal/ mkdir config cd web/sites/default/ cp default.settings.php settings.php cd .. sudo chmod -R 777 default/

Esses comandos de terminal executam as seguintes ações em ordem:

  • Acesse o diretório my_drupal
  • Crie um diretório chamado config
  • Acesse o diretório padrão
  • Copie o arquivo default.settings.php e altere seu nome para settings.php
  • Volte para o diretório de sites
  • Atribua permissões globais ao diretório padrão, para que o sistema possa concluir o processo de instalação

Feito isso, precisamos criar um banco de dados.

  • Tipo : mysql -u root -p

Digite sua senha de root do MySQL.

 create database my_drupal; exit;

Isso cria o banco de dados que você vinculará à sua base de código.

  • Abra seu navegador da web
  • Tipo : localhost/my_drupal/web

Conclua o processo de instalação local.


Etapa 2: criar e adicionar uma chave ao repositório remoto

Para o propósito deste tutorial, vou usar o Bitbucket. As etapas são bastante semelhantes a um perfil do Github.

Depois de fazer login na sua conta Bitbucket, clique no ícone do seu perfil, localizado (no momento da redação deste artigo) no canto inferior esquerdo.

  • Selecione configurações pessoais
  • Clique em Chaves SSH
  • Clique em Adicionar chave

Você verá uma janela pop-up solicitando um rótulo e uma chave.

  • Digite MyLaptop, BobsPC ou o que você quiser para identificar sua própria máquina no Bitbucket
  • Abra seu aplicativo de terminal
  • Tipo : ls -al ~/.ssh

O ponto antes do nome está nos dizendo, este é um diretório oculto. Existem duas possibilidades:

  1. Você obtém uma lista de arquivos, um desses arquivos tem a extensão .pub.
  1. Você recebe a mensagem “Arquivo ou diretório não encontrado”.

O arquivo com a extensão .pub é a chave pública do seu sistema. Se você não vir esse arquivo, será necessário criar um. Se você vir o arquivo, continue lendo mesmo assim.

  • Digite : ssh-keygen -t rsa -C "my_email@my_domain.com"
  • Pressione Enter para selecionar o diretório padrão onde a chave será armazenada (.ssh).
  • Digite a mesma senha duas vezes (você pode deixar em branco pressionando Enter duas vezes.)

O sistema irá notificá-lo sobre a localização de sua chave pública e sua impressão digital. Se você já tinha a chave .pub em seu sistema, volte aqui.

  • Abra o arquivo .ssh/id_rsa.pub com seu editor de código preferido
  • Copie todo o texto, incluindo seu endereço de e-mail
  • Abra seu navegador e cole -o na área de texto
  • Clique em Adicionar chave

Sua máquina local agora pode se conectar ao Bitbucket.


Etapa 3: criando o repositório remoto

No seu perfil do Bitbucket:

  • Clique em Criar repositório
  • Selecione um espaço de trabalho e um nome de projeto ( crie-os se for a primeira vez )
  • um nome próprio ao seu repositório
  • Não inclua um arquivo README
  • Não inclua um arquivo .gitignore
  • Clique em Criar repositório

Etapa 4: adicionar o repositório local ao Bitbucket

  • Tipo :
 cd /var/www/html/my_drupal/web mv example.gitignore .gitignore git init git add . git commit -m 'Fresh Drupal installation'

Você está acessando o diretório raiz da sua instalação do Drupal, alterando o nome do arquivo example.gitignore para .gitignore, inicializando seu repositório local, adicionando os arquivos à área de teste do git e, finalmente, confirmando essas “alterações” (o repositório foi inicialmente vazio) para o repositório.

  • Tipo :
 git remote add origin [email protected]:[MY_PROJECT]/my-drupal.git git push -u origin master

Você pode copiar e colar esses dois comandos da página do repositório no Bitbucket.

  • Digite sim, se solicitado
  • Digite sua senha

Verifique o repositório no Bitbucket. Quase todos os arquivos dentro do diretório web ( seu repositório local ) foram copiados para seu repositório remoto. Dê uma olhada no diretório sites/default.

Observe que o arquivo settings.php está ausente. Isso ocorre porque ele está incluído no arquivo .gitignore.

  • Abra seu terminal e
  • Tipo : nano.gitignore
  • Digite Ctrl+x para fechar o editor nano

Se você der uma olhada nos cartões na primeira imagem deste tutorial, você notará que já terminamos as tarefas do cartão 1, e só resta uma tarefa no cartão 2. Vamos continuar com a última parte deste processo .


Etapa 5: criar um banco de dados ativo

Abra seu painel em seu provedor de hospedagem e crie uma nova conta Drupal com seu nome de domínio.

  • Clique no Drupal “instalador de um botão”.
  • Clique em Criar conta

Isso pode variar de provedor para provedor, então você tem que encontrar o seu caminho aqui.

Você receberá um e-mail com um usuário Drupal (admin) e uma senha Drupal. Além disso, você também receberá o nome de usuário e a senha da sua conta cPanel. Estes são os que precisamos. Eles também estão disponíveis em seu painel em seu provedor de hospedagem.

  • Clique em Enable SSH , para que possamos ter acesso ao terminal no servidor ativo.
  • Clique no link do cPanel
  • Digite bancos de databases na caixa de pesquisa
  • Selecione bancos de dados MySQL

O instalador de um clique criou um banco de dados. Exclua este banco de dados.

  • Digite um nome adequado para seu banco de dados.

Observe o prefixo do banco de dados adicionado automaticamente pelo cPanel ( na maioria dos casos, seu nome de usuário ).


Etapa 6: importar o banco de dados local

  • Abra seu aplicativo de terminal
  • Tipo :
 mysqldump -u root p my_drupal > ~/[path/to/your/desktop]/[cpanel_sql_db_name].sql
  • Digite sua senha raiz do SQL

Isso fará uma cópia do seu banco de dados e a colocará em sua área de trabalho. Esse banco de dados na área de trabalho deve ter o mesmo nome daquele que você criou no cPanel.

Se você possui o MySQL versão 8 em sua máquina, provavelmente terá que adaptar o banco de dados para trabalhar com o MySQL 5 ( disponível em seu provedor de hospedagem ).

  • Tipo :
 sed -i -e 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g' [cpanel_sql_db_name].sql

Este é o comando do Linux para realizar esta operação.

  • Abra seu painel do cPanel
  • Digite phpMyAdmin na caixa de pesquisa e selecione -o
  • Clique no nome do seu banco de dados para selecioná-lo. Deve estar vazio ( Nenhuma tabela encontrada no banco de dados )
  • Clique em Importar
  • Clique em Escolher arquivo
  • Selecione o banco de dados da sua área de trabalho
  • Role para baixo e clique em Ir

Isso levará alguns minutos, então, por favor, seja paciente.


Etapa 7: redirecione seu domínio

Drupal é armazenado dentro do diretório da web, então para acessar seu site, você deve inserir a URL: https://yoursite.xxx/web

Se você usa um serviço de nuvem, isso não é problema, você pode editar seu arquivo hosts. Com o cPanel, isso não é possível (até onde eu sei). Você precisa criar um redirecionamento de URL permanente.

  • Abra seu painel do cPanel
  • Digite Redirects na caixa de pesquisa
  • Pressione Enter
  • Selecione Redirecionamento permanente (301)
  • Escolha o nome do seu domínio na lista suspensa
  • Adicione o link de redirecionamento
  • Clique em Adicionar
  • Digite Domains na caixa de pesquisa
  • Pressione Enter
  • Clique no seletor Forçar redirecionamento HTTPS

Etapa 8: carregar a base de código

  • Abra seu painel do cPanel
  • Digite Gerenciador de Arquivos na caixa de pesquisa
  • Pressione Enter
  • Clique duas vezes no diretório public_html
  • Clique no botão Configurações na parte superior direita da tela
  • Marque Mostrar arquivos ocultos (dotfiles)
  • Clique em Salvar
  • Clique em Selecionar tudo
  • Clique em Excluir
  • Abra o Gerenciador de Arquivos do seu sistema
  • Compacte toda a pasta my_drupal
Como configurar um fluxo de trabalho Drupal no cPanel com Git
  • Abra o gerenciador de arquivos cPanel
  • Clique em Carregar dentro do diretório public_html
  • Clique em Selecionar arquivo
  • Carregue o arquivo zip
  • Clique em Voltar depois que o arquivo for carregado no servidor
  • Clique com o botão direito do mouse no arquivo zip e selecione Extrair > Extrair arquivos > Fechar
  • Clique duas vezes na pasta my_drupal
  • Certifique -se de ter a opção Mostrar arquivos ocultos ativada
  • Clique em Selecionar tudo
  • Clique em Mover
  • Selecione o diretório public_html
  • Clique em Mover arquivos
  • Clique para cima um nível
  • Clique com o botão direito do mouse no arquivo zip e clique em Excluir
  • Remova o arquivo zip do seu servidor local também
  • Abra seu terminal ou gerenciador de arquivos
  • Copie o arquivo settings.php da instalação local para sua área de trabalho
  • Abra o arquivo com seu editor de código preferido
  • Substitua o nome de usuário pelo nome de usuário fornecido pelo seu provedor de hospedagem ( Faça o mesmo com o nome do banco de dados e a senha – veja o Passo #5 )
  • Salve e feche o arquivo
  • Abra o Gerenciador de Arquivos no painel do cPanel
  • Clique em public_html/web/sites/default
  • Clique em Carregar
  • Selecione o arquivo settings.php da sua área de trabalho
  • Clique em Sim para substituir o arquivo
  • Clique em Voltar
  • Altere as permissões de arquivo e diretório de acordo com a imagem abaixo
  • Clique para cima um nível
  • Altere as permissões da pasta padrão para 0755

Etapa 9: defina a versão do PHP em seu servidor

Drupal requer pelo menos PHP 7.3.

  • Abra seu painel do cPanel
  • Digite Select PHP na caixa de pesquisa
  • Pressione Enter
  • Selecione 7.4
  • Clique em Definir como atual
  • Verifique a extensão opcache
  • Digite [yoursite.xxx/web] na barra de endereços do seu navegador
  • Clique em Login com o nome de usuário e senha de sua instalação local do Drupal
  • Clique na guia Editar e altere sua senha, se necessário

Etapa 10: adicionar a chave do servidor de produção ao Bitbucket

  • Abra seu painel do cPanel
  • Digite Terminal na caixa de pesquisa
  • Clique em Entrar
  • Clique em Eu entendo e quero continuar
  • Repita o processo detalhado na Etapa # 2
  • Tipo: less ~/.ssh/id_rsa.pub

less é um editor de terminal

  • Copie e cole a chave como mostrado na Etapa # 2, desta vez para a máquina do servidor
  • Tipo : q

Isso permitirá que você saia menos.

Você terá uma chave para cada máquina ( ou máquina virtual ) conectada ao Bitbucket.


Etapa 11: clonar o repositório remoto para o servidor de produção

  • Abra o aplicativo de terminal do seu servidor
  • Tipo :
 cd public_html rm -rf web git clone [email protected]:[YOUR_PROJECT]/my-drupal.git web

Você está excluindo a pasta da web e substituindo-a pelo repositório remoto. Você obtém o último comando do terminal se abrir o repositório do Bitbucket e clicar no botão Clone ( não se esqueça de adicionar web no final do comando! ) .


Etapa 12: instalar um módulo ou tema

  • Abra o aplicativo de terminal do seu sistema local
  • Tipo :
 cd /var/www/html/my_drupal composer require drupal/bootstrap
  • Digite cd web para entrar no diretório web
  • Tipo :
 git add . git commit -m 'Bootstrap theme installation' git status
  • Digite git push
  • Digite a senha, se necessário
  • Abra o terminal em seu servidor remoto.
  • Digite ( insira a senha, se necessário ):
 git fetch git status

Se você vir: Seu branch está atrás de 'origin/master' por 1 commit e pode ser avançado rapidamente,

  • Tipo : git merge

Isso mesclará o código em seu servidor com o código que está sendo extraído do repositório remoto.

  • Vá para a seção de temas do seu backend Drupal, o tema Bootstrap deve estar lá

NOTA: Você só precisa repetir esta última etapa, cada vez que baixar um módulo, atualizar o núcleo do Drupal ou editar o código CSS do seu tema.


Solução de problemas

Se você obtiver páginas de erro 404 após instalar o Drupal no servidor de produção,

  • Exclua o arquivo .htaccess
  • Faça o upload novamente para o servidor

Espero que tenham gostado deste tutorial. Obrigado por ler!