Come impostare un flusso di lavoro Drupal in cPanel con Git - OTraining

Pubblicato: 2022-06-29

A differenza di altri CMS, l'aggiornamento del core di Drupal non è difficile, ma in qualche modo complicato a causa di tutti i dettagli coinvolti. In questo tutorial, implementeremo un'installazione locale di Drupal 9, quindi caricheremo (push) questa base di codice in un repository centrale su Bitbucket. Quindi scaricheremo (tireremo) la base di codice da questo repository al server live, dove verrà archiviato il sito Web.

Usando questo processo (orientato al terminale), sarai in grado di accelerare gli aggiornamenti del core e dei moduli di Drupal e seguirai le migliori pratiche.

Si presume che tu abbia già uno stack LAMP installato sul tuo sistema. Inoltre, è necessario l'accesso al terminale sul server web.

Continua a leggere per sapere come!

Passaggio 1: installa Drupal 9 in locale

Apri l'applicazione Terminale del tuo sistema e posiziona il cursore sulla directory del tuo server locale, in genere /var/www/html su un sistema Linux.

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

Questo scaricherà l'ultima versione stabile di Drupal sul tuo computer.

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

Questi comandi del terminale eseguono le seguenti azioni nell'ordine:

  • Accedi alla directory my_drupal
  • Crea una directory chiamata config
  • Accedi alla directory predefinita
  • Copia il file default.settings.php e cambia il suo nome in settings.php
  • Torna alla directory dei siti
  • Assegna autorizzazioni globali alla directory predefinita, in modo che il sistema possa completare il processo di installazione

Una volta completato, dobbiamo creare un database.

  • Digita : mysql -u root -p

Inserisci la tua password di root MySQL.

 create database my_drupal; exit;

Questo crea il database che collegherai alla tua codebase.

  • Apri il tuo browser web
  • Digitare : localhost/my_drupal/web

Completa il processo di installazione locale.


Passaggio 2: creazione e aggiunta di una chiave al repository remoto

Ai fini di questo tutorial, userò Bitbucket. I passaggi sono abbastanza simili a un profilo Github.

Una volta effettuato l'accesso al tuo account Bitbucket, fai clic sull'icona del tuo profilo, che si trova (al momento in cui scrivo) nell'angolo in basso a sinistra.

  • Seleziona Impostazioni personali
  • Fare clic su Chiavi SSH
  • Fare clic su Aggiungi chiave

Verrà visualizzata una finestra popup che richiede un'etichetta e una chiave.

  • Digita MyLaptop, BobsPC o qualunque cosa tu voglia identificare la tua macchina su Bitbucket
  • Apri la tua applicazione terminale
  • Digitare : ls -al ~/.ssh

Il punto prima del nome ci dice, questa è una directory nascosta. Ci sono due possibilità:

  1. Ottieni un elenco di file, uno di questi file ha l'estensione .pub.
  1. Viene visualizzato il messaggio "File o directory non trovati".

Il file con estensione .pub è la chiave pubblica del tuo sistema. Se non vedi questo file, devi crearne uno. Se vedi il file, continua a leggere comunque.

  • Digita : ssh-keygen -t rsa -C "my_email@my_domain.com"
  • Premere Invio per selezionare la directory predefinita in cui verrà memorizzata la chiave (.ssh).
  • Inserisci due volte la stessa passphrase (puoi lasciarla vuota premendo Invio due volte).

Il sistema ti avviserà della posizione della tua chiave pubblica e della sua impronta digitale. Se avevi già la chiave .pub sul tuo sistema, torna qui.

  • Apri il file .ssh/id_rsa.pub con il tuo editor di codice preferito
  • Copia l'intero testo, incluso il tuo indirizzo email
  • Apri il browser e incollalo nell'area di testo
  • Fare clic su Aggiungi chiave

La tua macchina locale ora può connettersi a Bitbucket.


Passaggio 3: creazione del repository remoto

Sul tuo profilo Bitbucket:

  • Fare clic su Crea repository
  • Seleziona un'area di lavoro e un nome di progetto ( creali se è la prima volta )
  • Assegna un nome proprio al tuo repository
  • Non includere un file README
  • Non includere un file .gitignore
  • Fare clic su Crea repository

Passaggio 4: aggiungi il repository locale a Bitbucket

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

Stai accedendo alla directory principale della tua installazione di Drupal, cambiando il nome del file example.gitignore in .gitignore, inizializzando il tuo repository locale, aggiungendo i file all'area di staging di git e, infine, eseguendo questi "modifiche" (il repository era inizialmente vuoto) nel repository.

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

Puoi copiare e incollare questi due comandi dalla pagina del repository su Bitbucket.

  • Digitare sì, se richiesto
  • Inserisci la tua passphrase

Controlla il repository su Bitbucket. Quasi tutti i file all'interno della directory web ( il tuo repository locale ) sono stati copiati nel tuo repository remoto. Dai un'occhiata alla directory sites/default.

Si noti che il file settings.php è mancante. Questo perché è incluso all'interno del file .gitignore.

  • Apri il tuo terminale e
  • Digita : nano .gitignore
  • Digita Ctrl+x per chiudere il nano editor

Se dai un'occhiata alle carte nella prima immagine di questo tutorial, noterai che abbiamo già terminato i compiti della carta 1 e c'è solo un compito rimasto nella carta 2. Continuiamo con l'ultima parte di questo processo .


Passaggio 5: crea un database live

Apri la tua dashboard presso il tuo provider di hosting e crea un nuovo account Drupal con il tuo nome di dominio.

  • Fare clic sul "programma di installazione con un solo pulsante" di Drupal.
  • Fare clic su Crea account

Questo può variare da provider a provider, quindi devi trovare la via d'uscita qui.

Riceverai un'e-mail con un utente Drupal (admin) e una password Drupal. Inoltre, riceverai anche il nome utente e la password per il tuo account cPanel. Questi sono quelli di cui abbiamo bisogno. Sono disponibili anche sulla dashboard del tuo provider di hosting.

  • Fare clic su Abilita SSH , così possiamo avere accesso al terminale sul server live.
  • Fare clic sul collegamento cPanel
  • Digita databases nella casella di ricerca
  • Seleziona Database MySQL

Il programma di installazione con un clic ha creato un database. Elimina questo database.

  • Inserisci un nome proprio per il tuo database.

Notare il prefisso del database aggiunto automaticamente da cPanel ( nella maggior parte dei casi il tuo nome utente ).


Passaggio 6: importa il database locale

  • Apri la tua applicazione terminale
  • Tipo :
 mysqldump -u root p my_drupal > ~/[path/to/your/desktop]/[cpanel_sql_db_name].sql
  • Inserisci la tua password di root SQL

Questo creerà una copia del tuo database e lo posizionerà sul desktop. Questo database sul desktop deve avere lo stesso nome di quello che hai creato su cPanel.

Se hai MySQL versione 8 sulla tua macchina, molto probabilmente dovrai adattare il database per funzionare con MySQL 5 ( disponibile presso il tuo provider di hosting ).

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

Questo è il comando Linux per eseguire questa operazione.

  • Apri la dashboard di cPanel
  • Digita phpMyAdmin nella casella di ricerca e selezionalo
  • Clicca sul nome del tuo database per selezionarlo. Dovrebbe essere vuoto ( nessuna tabella trovata nel database )
  • Fare clic su Importa
  • Fare clic su Scegli file
  • Seleziona il database dal desktop
  • Scorri verso il basso e fai clic su Vai

Ci vorranno un paio di minuti, quindi sii paziente.


Passaggio 7: reindirizza il tuo dominio

Drupal è memorizzato all'interno della directory web, quindi per accedere al tuo sito devi inserire l'URL: https://yoursite.xxx/web

Se utilizzi un servizio cloud, questo non è un problema, puoi modificare il file hosts. Con cPanel, questo non è possibile (per quanto ne so). Devi creare un reindirizzamento URL permanente.

  • Apri la dashboard di cPanel
  • Digita Redirects nella casella di ricerca
  • Premi Invio
  • Seleziona Reindirizzamento permanente (301)
  • Scegli il nome del tuo dominio dal menu a tendina
  • Aggiungi il link di reindirizzamento
  • Fare clic su Aggiungi
  • Digita Domains nella casella di ricerca
  • Premi Invio
  • Fare clic sull'interruttore Forza reindirizzamento HTTPS

Passaggio 8: carica la codebase

  • Apri la dashboard di cPanel
  • Digita File Manager nella casella di ricerca
  • Premi Invio
  • Fare doppio clic sulla directory public_html
  • Fare clic sul pulsante Impostazioni nella parte in alto a destra dello schermo
  • Seleziona Mostra file nascosti (dotfile)
  • Fare clic su Salva
  • Fare clic su Seleziona tutto
  • Fare clic su Elimina
  • Apri il File Manager del tuo sistema
  • Comprimi l'intera cartella my_drupal
Come impostare un flusso di lavoro Drupal in cPanel con Git
  • Apri il File Manager di cPanel
  • Fare clic su Carica all'interno della directory public_html
  • Fare clic su Seleziona file
  • Carica il file zip
  • Fare clic su Torna indietro una volta che il file è stato caricato sul server
  • Fare clic con il pulsante destro del mouse sul file zip e selezionare Estrai > Estrai file > Chiudi
  • Fare doppio clic sulla cartella my_drupal
  • Assicurati di aver attivato l'opzione Mostra file nascosti
  • Fare clic su Seleziona tutto
  • Fare clic su Sposta
  • Seleziona la directory public_html
  • Fare clic su Sposta file
  • Fare clic su Su di un livello
  • Fare clic con il pulsante destro del mouse sul file zip e fare clic su Elimina
  • Rimuovi anche il file zip dal tuo server locale
  • Apri il tuo terminale o file manager
  • Copia il file settings.php dell'installazione locale sul desktop
  • Apri il file con il tuo editor di codice preferito
  • Sostituisci il nome utente con il nome utente fornito dal tuo provider di hosting ( Fai lo stesso con il nome del database e la password – vedi Passaggio n. 5 )
  • Salva e chiudi il file
  • Apri il File Manager nella dashboard di cPanel
  • Fare clic su public_html/web/sites/default
  • Fare clic su Carica
  • Seleziona il file settings.php dal desktop
  • Fare clic su per sovrascrivere il file
  • Fare clic su Torna indietro
  • Modifica le autorizzazioni di file e directory in base all'immagine seguente
  • Fare clic su Su di un livello
  • Modificare le autorizzazioni della cartella predefinita in 0755

Passaggio 9: imposta la versione PHP sul tuo server

Drupal richiede almeno PHP 7.3.

  • Apri la dashboard di cPanel
  • Digita Select PHP nella casella di ricerca
  • Premi Invio
  • Seleziona 7.4
  • Fare clic su Imposta come corrente
  • Controlla l'estensione opcache
  • Digita [yoursite.xxx/web] nella barra degli indirizzi del tuo browser
  • Fai clic su Accedi con il nome utente e la password della tua installazione Drupal locale
  • Fare clic sulla scheda Modifica e, se necessario, modificare la password

Passaggio 10: aggiungi la chiave del server di produzione a Bitbucket

  • Apri la dashboard di cPanel
  • Digita Terminal nella casella di ricerca
  • Fare clic su Invio
  • Fare clic su Capisco e voglio procedere
  • Ripetere il processo descritto nel passaggio n. 2
  • Digita: less ~/.ssh/id_rsa.pub

less è un editor di terminale

  • Copia e incolla la chiave come mostrato nel passaggio n. 2, questa volta per la macchina server
  • Tipo : q

Questo ti permetterà di uscire di meno.

Avrai una chiave per ogni macchina ( o macchina virtuale ) connessa a Bitbucket.


Passaggio 11: clonare il repository remoto sul server di produzione

  • Apri l'applicazione terminale del tuo server
  • Tipo :
 cd public_html rm -rf web git clone [email protected]:[YOUR_PROJECT]/my-drupal.git web

Stai eliminando la cartella Web e sostituendola con il repository remoto. Ottieni l'ultimo comando da terminale se apri il repository Bitbucket e fai clic sul pulsante Clona ( non dimenticare di aggiungere web alla fine del comando! ) .


Passaggio 12: installa un modulo o un tema

  • Apri l'applicazione terminale del tuo sistema locale
  • Tipo :
 cd /var/www/html/my_drupal composer require drupal/bootstrap
  • Digita cd web per entrare nella directory web
  • Tipo :
 git add . git commit -m 'Bootstrap theme installation' git status
  • Digita git push
  • Immettere la passphrase se richiesta
  • Apri il terminale sul tuo server remoto.
  • Digita ( inserisci la passphrase se richiesta ):
 git fetch git status

Se vedi: Il tuo ramo è dietro 'origin/master' di 1 commit e può essere fatto avanzare velocemente,

  • Digita : git merge

Questo unirà il codice nel tuo server con il codice estratto dal repository remoto.

  • Vai alla sezione dei temi del tuo backend Drupal, il tema Bootstrap dovrebbe essere lì

NOTA: Devi solo ripetere quest'ultimo passaggio, ogni volta che scarichi un modulo, aggiorni Drupal core o modifichi il codice CSS del tuo tema.


Risoluzione dei problemi

Se ricevi 404 pagine di errore dopo aver installato Drupal sul server di produzione,

  • Elimina il file .htaccess
  • Caricalo di nuovo sul server

Spero che questo tutorial ti sia piaciuto. Grazie per aver letto!