Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando...

30
Comenzando con Drupal 8 y colaborando con el proyectoRuben Teijeiro Lead Drupal Fronted Developer at Ericsson @buk0wsk1 Beltrán Rueda Bitnami Project Manager @beltranrubo

Transcript of Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando...

Page 1: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

“Comenzando con Drupal 8

y colaborando con el proyecto”

Ruben TeijeiroLead Drupal Fronted Developer at Ericsson @buk0wsk1

Beltrán RuedaBitnami Project Manager @beltranrubo

Page 2: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Índice

• Instalando Bitnami Drupal 8

• Componentes y estructura

• Comenzando con la línea de comandos: Drush, Git

• Colaborando con Drupal 8

• Drupal 8 en la nube: Azure

• Mejorando el rendimiento

Page 3: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

http://bitnami.com/stack/drupal

Page 4: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

• Instaladores nativos

• Máquinas Virtuales

• Imágenes en la nube

Page 5: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Instalando Bitnami Drupal 8

Page 6: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Instalando Bitnami Drupal 8

Page 7: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Máquina Virtual

• SSH deshabilitado por defecto

$ mv /etc/init/ssh.conf.back /etc/init/ssh.conf

$ sudo start ssh

• Usuario “bitnami” y password “bitnami”

• Todos los ficheros en /opt/bitnami

Page 8: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Supported Platforms

Más de 80

Aplicaciones en Bitnami

Page 9: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Componentes

• Drupal 8 CMS

• Apache web server

• MySQL database

• PHP scripting language

• phpMyAdmin web application

• PHP extensions for Drupal: gd, mbstrings, uploadprogress

• Otras extensiones: APC, Mongo, OAuth, Solr entre otras

• Drush command line tool for Drupal

• Git distributed version control

Page 10: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Estructura

• Instalación autocontenida: todo en un directorio

• Independiente del sistema

• Incluye todas las librerías y dependencias

• Fácil de gestionar:

$ ctlscript.sh start|stop|status

apache already running

mysql already running

php-fpm already running

Page 11: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Estructura

• apps/drupal/conf Apache configuration files

• apps/drupal/htdocs Drupal files

Page 12: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Línea de comandos

• Linux y OS X

$ cd directorio_de_instalación (/home/beltran/drupal-8.0.alpha11)

$ ./use_drupal (consola para cargar el entorno de la stack)

• Windows

Start -> Program Files -> Bitnami Drupal -> Use Drupal

• Entorno de la stack

$ which php

/home/beltran/drupal-8.0.alpha11/php/bin/php

Page 13: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Línea de comandos

• Drupal 8: GIT

$ git status

HEAD detached at 8.0-alpha11

• Actualizar Drupal 8 al último cambio

$ git checkout 8.x

$ git pull

Page 14: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Línea de comandos

• Obtener los últimos cambios en el repo.

$ git fetch origin

• Resetear la rama actual.

$ git reset --hard origin/8.x

• Crear una rama nueva.

$ git checkout -t -b patch

Page 15: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Línea de comandos

• Descargar el parche.

$ wget http://url_to_file.patch

• Aplicar parche.

$ git apply -v file.patch

• Commitear los cambios del parche.

$ git add <fichero/s modificado/s>

$ git commit -m”Patch applied.”

Page 16: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Línea de comandos

• Crear una rama nueva con los cambios del parche.

$ git checkout -t -b interdiff

• Modificar los ficheros necesarios.

• Crear parche.

$ git diff origin/8.x > your_awesome.patch

• Crear interdiff.

$ git diff patch > interdiff.txt

Page 17: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Drush

• Obtener información del sitio

$ drush status

• Instalar Drupal.

$ drush si --db-url=mysql://root:root@localhost/drupal8 --account-name=rteijeiro --account-pass=password --clean-url --site-name="Drupal 8" -y

• Reconstruir sitio Drupal y borrar cache.

$ drush cr

Page 18: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Drush

• Descargar módulo

$ drush dl <module_name>

• Habilitar módulo.

$ drush en <module_name>

• Deshabilitar módulo.

$ drush dis <module_name>

Page 19: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal en la nube

Page 20: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

Page 21: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

Page 22: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

Page 23: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

Page 24: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Mejoras en rendimiento

• Apache modo “event”

• Permite servir más “requests” simultáneamente

• Funcionamiento similar a Nginx

• PHP-FPM

• PHP FastCGI Process Manager

• Google PageSpeed

• Compresión de imágenes

• Compilación de javascripts y css

• Caché

Page 25: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Mejoras en rendimiento

• Configuración según instancia

• Apache, PHP, MySQL se adaptan a los recursos de la instancia

• Varnish Cache

• Permite mayor número de usuarios

• Reduce significativamente la carga de PHP y MySQL

• Fácil de configurar

• Monit

• Monitoriza y reinicia automáticamente los servidores

Page 26: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Apache “prefork” + mod_php

Timeouts/Errores a partir de 50 peticiones

Page 27: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Apache “event” + PHP-FPM

Timeouts/Errores a partir de 150 peticiones

Page 28: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8: Apache “event” + PHP-FPM + Varnish

Todas las peticionesse sirven sin errores

Page 29: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Bitnami Drupal 8

• Fácil de usar y ahorro de tiempo

• Últimas versiones de Drupal y sus componentes

• Múltiples plataformas

• Copias de seguridad, copias para desarrollo

• Escalar el servidor de forma sencilla

• Mejoras en rendimiento

• Monitorización de servidores y alertas

• Control completo del servidor

• Documentación

• Soporte http://community.bitnami.com

Page 30: Comenzando con Drupal 8 y colaborando con el proyecto · “Comenzando con Drupal 8 y colaborando con el proyecto ... Bitnami Drupal 8: Componentes • Drupal 8 CMS • Apache web

Gracias

Ruben TeijeiroLead Drupal Fronted Developer at Ericsson @buk0wsk1

Beltrán RuedaBitnami Project Manager @beltranrubo