Cómo configurar un flujo de trabajo de Drupal en cPanel con Git - OSTraining
Publicado: 2022-06-29A diferencia de otros CMS, la actualización del núcleo de Drupal no es difícil, pero sí complicada debido a todos los detalles involucrados. En este tutorial, implementaremos una instalación local de Drupal 9 y luego cargaremos (empujaremos) esta base de código a un repositorio central en Bitbucket. Luego, descargaremos (extraeremos) el código base de este repositorio al servidor en vivo, donde se almacenará el sitio web.
Con este proceso (orientado a terminal), podrá acelerar las actualizaciones del módulo y del núcleo de Drupal, y seguirá las mejores prácticas.
Se supone que ya tiene una pila LAMP instalada en su sistema. Además, necesita acceso a la terminal en su servidor web.
¡Sigue leyendo para aprender cómo!
Paso 1: Instale Drupal 9 localmente
Abra la aplicación Terminal de su sistema y coloque el cursor en el directorio de su servidor local, generalmente /var/www/html
en un sistema Linux.
- Tipo :
composer create-project drupal/recommended-project my_drupal
Esto descargará la última versión estable de Drupal en su máquina.
- Tipo :
cd my_drupal/ mkdir config cd web/sites/default/ cp default.settings.php settings.php cd .. sudo chmod -R 777 default/
Estos comandos de terminal realizan las siguientes acciones en orden:
- Accede al directorio my_drupal
- Crea un directorio llamado config
- Acceder al directorio predeterminado
- Copie el archivo default.settings.php y cambie su nombre a settings.php
- Volver al directorio de sitios
- Asigne permisos globales al directorio predeterminado, para que el sistema pueda completar el proceso de instalación
Una vez hecho esto, necesitamos crear una base de datos.
- Escriba :
mysql -u root -p
Ingrese su contraseña raíz de MySQL.
create database my_drupal; exit;
Esto crea la base de datos que vinculará a su base de código.
- Abre tu navegador web
- Tipo : localhost/my_drupal/web
Finalice el proceso de instalación local.
Paso 2: crear y agregar una clave al repositorio remoto
A los efectos de este tutorial, voy a utilizar Bitbucket. Los pasos son bastante similares a un perfil de Github.
Una vez que haya iniciado sesión en su cuenta de Bitbucket, haga clic en el ícono de su perfil, ubicado (en el momento de escribir este artículo) en la esquina inferior izquierda.
- Seleccione Configuración personal
- Haga clic en Claves SSH
- Haga clic en Agregar clave
Verá una ventana emergente que le pedirá una etiqueta y una clave.
- Escriba MyLaptop, BobsPC o lo que quiera para identificar su propia máquina en Bitbucket
- Abre tu aplicación de terminal
- Escriba :
ls -al ~/.ssh
El punto anterior al nombre nos dice que este es un directorio oculto. Hay dos posibilidades:
- Obtiene una lista de archivos, uno de estos archivos tiene la extensión .pub.
- Recibe el mensaje "Archivo o directorio no encontrado".
El archivo con la extensión .pub es la clave pública de su sistema. Si no ve este archivo, debe crear uno. Si ve el archivo, siga leyendo de todos modos.
- Escriba :
ssh-keygen -t rsa -C "my_email@my_domain.com"
- Presione Entrar para seleccionar el directorio predeterminado donde se almacenará la clave (.ssh).
- Ingrese la misma frase de contraseña dos veces (puede dejar esto vacío presionando Enter dos veces).
El sistema le notificará sobre la ubicación de su clave pública y su huella digital. Si ya tenía la clave .pub en su sistema, vuelva aquí.
- Abra el archivo .ssh/id_rsa.pub con su editor de código preferido
- Copie todo el texto, incluida su dirección de correo electrónico
- Abra su navegador y péguelo en el área de texto
- Haga clic en Agregar clave
Su máquina local ahora puede conectarse a Bitbucket.
Paso 3: Crear el Repositorio Remoto
En tu perfil de Bitbucket:
- Haz clic en Crear repositorio
- Seleccione un espacio de trabajo y un nombre de proyecto ( créelos si es la primera vez )
- Dale a tu repositorio un nombre propio
- No incluya un archivo README
- No incluya un archivo .gitignore
- Haz clic en Crear repositorio
Paso 4: agregue el repositorio local a Bitbucket
- Tipo :
cd /var/www/html/my_drupal/web mv example.gitignore .gitignore git init git add . git commit -m 'Fresh Drupal installation'
Está accediendo al directorio raíz de su instalación de Drupal, cambiando el nombre del archivo ejemplo.gitignore a .gitignore, inicializando su repositorio local, agregando los archivos al área de preparación de git y finalmente confirmando estos "cambios" (el repositorio fue inicialmente vacío) al repositorio.
- Tipo :
git remote add origin [email protected]:[MY_PROJECT]/my-drupal.git git push -u origin master
Puede copiar y pegar estos dos comandos desde la página del repositorio en Bitbucket.
- Escriba sí, si se le solicita
- Ingrese su frase de contraseña
Consulte el repositorio en Bitbucket. Casi todos los archivos dentro del directorio web ( su repositorio local ) se han copiado en su repositorio remoto. Eche un vistazo al directorio sites/default.
Observe que falta el archivo settings.php. Esto se debe a que está incluido dentro del archivo .gitignore.
- Abre tu terminal y
- Tipo : nano .gitignore
- Escriba Ctrl+x para cerrar el editor nano
Si observa las tarjetas en la primera imagen de este tutorial, notará que ya hemos terminado las tareas de la tarjeta 1, y solo queda una tarea en la tarjeta 2. Continuemos con la última parte de este proceso. .
Paso 5: Cree una base de datos en vivo
Abra su tablero en su proveedor de alojamiento y cree una nueva cuenta de Drupal con su nombre de dominio.
- Haga clic en el "instalador de un botón" de Drupal.
- Haz clic en Crear cuenta
Esto puede variar de un proveedor a otro, por lo que debe encontrar la manera de salir aquí.
Recibirá un correo electrónico con un usuario de Drupal (administrador) y una contraseña de Drupal. Además, también recibirá el nombre de usuario y la contraseña de su cuenta de cPanel. Estos son los que necesitamos. También están disponibles en su tablero en su proveedor de alojamiento.
- Haga clic en Habilitar SSH para que podamos tener acceso a la terminal en el servidor en vivo.
- Haga clic en el enlace de cPanel
- Escriba bases de
databases
en el cuadro de búsqueda - Seleccionar bases de datos MySQL
El instalador de un clic creó una base de datos. Eliminar esta base de datos.
- Introduzca un nombre propio para su base de datos.
Observe el prefijo de la base de datos agregado automáticamente por cPanel ( en la mayoría de los casos, su nombre de usuario ).
Paso 6: Importe la base de datos local
- Abre tu aplicación de terminal
- Tipo :
mysqldump -u root p my_drupal > ~/[path/to/your/desktop]/[cpanel_sql_db_name].sql
- Ingrese su contraseña raíz de SQL
Esto hará una copia de su base de datos y la colocará en su escritorio. Esta base de datos en el escritorio debe tener el mismo nombre que la que creó en cPanel.
Si tiene MySQL versión 8 en su máquina, lo más probable es que tenga que adaptar la base de datos para que funcione con MySQL 5 ( disponible en su proveedor de alojamiento ).
- Tipo :
sed -i -e 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g' [cpanel_sql_db_name].sql
Este es el comando de Linux para realizar esta operación.
- Abre tu panel de cPanel
- Escriba
phpMyAdmin
en el cuadro de búsqueda y selecciónelo - Haga clic en el nombre de su base de datos para seleccionarla. Debe estar vacío ( No se encontraron tablas en la base de datos )
- Haga clic en Importar
- Haga clic en Elegir archivo
- Seleccione la base de datos desde su escritorio
- Desplácese hacia abajo y haga clic en Ir
Esto tomará un par de minutos, así que tenga paciencia.
Paso 7: redirija su dominio
Drupal se almacena dentro del directorio web, por lo que para acceder a su sitio, debe ingresar la URL: https://yoursite.xxx/web
Si usa un servicio en la nube, esto no es problema, puede editar su archivo de hosts. Con cPanel, esto no es posible (que yo sepa). Tienes que crear una redirección de URL permanente.
- Abre tu panel de cPanel
- Escriba
Redirects
en el cuadro de búsqueda - Presiona Entrar
- Seleccione Redirección permanente (301)
- Elija el nombre de su dominio en el menú desplegable
- Añadir el enlace de redirección
- Haga clic en Agregar
- Escriba
Domains
en el cuadro de búsqueda - Presiona Entrar
- Haga clic en el conmutador Forzar redirección HTTPS
Paso 8: Cargue la base de código
- Abre tu panel de cPanel
- Escriba Administrador de archivos en el cuadro de búsqueda
- Presiona Entrar
- Haga doble clic en el directorio public_html
- Haga clic en el botón Configuración en la parte superior derecha de la pantalla
- Marque Mostrar archivos ocultos (dotfiles)
- Haga clic en Guardar
- Haga clic en Seleccionar todo
- Haga clic en Eliminar
- Abra el Administrador de archivos de su sistema
- Comprimir toda la carpeta my_drupal
- Abra el Administrador de archivos de cPanel
- Haga clic en Cargar dentro del directorio public_html
- Haga clic en Seleccionar archivo
- Sube el archivo zip
- Haga clic en Volver una vez que el archivo se haya cargado en el servidor
- Haga clic derecho en el archivo zip y seleccione Extraer > Extraer archivos > Cerrar
- Haga doble clic en la carpeta my_drupal
- Asegúrate de tener activada la opción Mostrar archivos ocultos
- Haga clic en Seleccionar todo
- Haga clic en Mover
- Seleccione el directorio public_html
- Haz clic en Mover archivos
- Haga clic en Subir un nivel
- Haga clic derecho en el archivo zip y haga clic en Eliminar
- Elimine el archivo zip de su servidor local también
- Abra su terminal o administrador de archivos
- Copie el archivo settings.php de la instalación local en su escritorio
- Abra el archivo con su editor de código preferido
- Reemplace el nombre de usuario con el nombre de usuario proporcionado por su proveedor de alojamiento ( Haga lo mismo con el nombre de la base de datos y la contraseña; consulte el Paso 5 )
- Guardar y cerrar el archivo
- Abra el Administrador de archivos en el panel de cPanel
- Haga clic en public_html/web/sites/default
- Haga clic en Cargar
- Seleccione el archivo settings.php desde su escritorio
- Haga clic en Sí para sobrescribir el archivo
- Haga clic en Volver
- Cambie los permisos de archivo y directorio de acuerdo con la imagen a continuación
- Haga clic en Subir un nivel
- Cambia los permisos de la carpeta por defecto a 0755
Paso 9: configure la versión de PHP en su servidor
Drupal requiere al menos PHP 7.3.
- Abre tu panel de cPanel
- Escriba
Select PHP
en el cuadro de búsqueda - Presiona Entrar
- Seleccione 7.4
- Haga clic en Establecer como actual
- Compruebe la extensión opcache
- Escriba
[yoursite.xxx/web]
en la barra de direcciones de su navegador - Haga clic en Iniciar sesión con el nombre de usuario y la contraseña de su instalación local de Drupal
- Haga clic en la pestaña Editar y cambie su contraseña si es necesario
Paso 10: agregue la clave del servidor de producción a Bitbucket
- Abre tu panel de cPanel
- Escriba
Terminal
en el cuadro de búsqueda - Haga clic en Entrar
- Haga clic en Entiendo y quiero continuar
- Repite el proceso detallado en el Paso #2
- Tipo:
less ~/.ssh/id_rsa.pub
less es un editor de terminal
- Copie y pegue la clave como se muestra en el paso n.° 2, esta vez para la máquina del servidor
- Tipo :
q
Eso te permitirá salir menos.
Tendrá una clave para cada máquina ( o máquina virtual ) conectada a Bitbucket.
Paso 11: clone el repositorio remoto en el servidor de producción
- Abra la aplicación de terminal de su servidor
- Tipo :
cd public_html rm -rf web git clone [email protected]:[YOUR_PROJECT]/my-drupal.git web
Está eliminando la carpeta web y reemplazándola con el repositorio remoto. Obtiene el último comando de terminal si abre el repositorio de Bitbucket y hace clic en el botón Clonar ( ¡no olvide agregar web al final del comando! ) .
Paso 12: Instala un Módulo o Tema
- Abra la aplicación de terminal de su sistema local
- Tipo :
cd /var/www/html/my_drupal composer require drupal/bootstrap
- Escriba
cd web
para acceder al directorio web - Tipo :
git add . git commit -m 'Bootstrap theme installation' git status
- Escribe
git push
- Ingrese la frase de contraseña si es necesario
- Abra la terminal en su servidor remoto.
- Escriba ( ingrese la frase de contraseña si es necesario ):
git fetch git status
Si ve: Su rama está detrás de 'origen/maestro' por 1 confirmación, y se puede avanzar rápidamente,
- Tipo :
git merge
Esto fusionará el código en su servidor con el código extraído del repositorio remoto.
- Vaya a la sección de temas de su backend de Drupal, el tema de Bootstrap debería estar allí
NOTA: Solo tienes que repetir este último paso, cada vez que descargues un módulo, actualices el core de Drupal, o edites el código CSS de tu tema.
Solución de problemas
Si obtiene páginas de error 404 después de instalar Drupal en el servidor de producción,
- Eliminar el archivo .htaccess
- Subirlo de nuevo al servidor
Espero que les haya gustado este tutorial. ¡Gracias por leer!