En el post anterior hablaba de cómo es posible desplegar una aplicación PHP en Windows Azure. En este caso os comentaré cómo es posible desplegar una aplicación WordPress en la plataforma, que como veréis, es prácticamente igual al ejemplo que veíamos anteriormente.
El proceso es el mismo que en caso anterior, una línea de comandos para crear la estructura dónde incluir nuestro wordpress y otra línea de comandos para crear en el empaquetado en el formato que se necesita Windows Azure.
> scaffolder run
-s="PathscaffoldersWordPress.phar"
-out="C:tempWordPress"
-DB_HOST ‘db_host’ -DB_NAME ‘name’
-DB_USER ‘user@db_host’ -DB_PASSWORD ‘password’
-sync_key ‘storage’ -sync_account ‘key’
-WP_ALLOW_MULTISITE
Este comando dispone de más parámetros que los que usábamos en el ejemplo anterior.
El primer parámetro contiene la plantilla que tiene que utilizarse para generar la estructura de ficheros y directorios para WordPress. En GitHub podéis encontrar plantillas para WordPress y Drupal; https://github.com/Interop-Bridges/Windows-Azure-PHP-Scaffolders/downloads
Además de este parámetro, también se indica los datos de conexión a la base de datos que contendrá la estructura de tablas de WordPress; nombre del servidor, nombre de la base de datos, usuario y contraseña. La base de datos debe estar existir, aunque no tenga tablas.
También se indica el nombre del storage y la key de acceso dónde WordPress guardará todo el contenido media que se suba al portal; imágenes, documentos etc…
Y por último, un parámetro para indicar que se quiere un WordPress que permita MULTISITE.
Este comando se descarga la última versión de WordPress y lo configura para que éste pueda trabajar con SQL Azure (Database Abstraction Layer) y pueda guardar los contenido media en Windows Azure Storage (Azure Storage Plugin).
A parte de añadir estos dos plugins, otra peculiaridad que tiene el WordPress descargado es que está modificado el fichero wp-config.php para que éste pueda leer la configuración desde el fichero de configuración de Windows Azure cuándo la aplicación está desplegada en la plataforma. Esto posibilita cambiar los parámetros de configuración de la aplicación cuando está ya desplegada.
Una vez termine este comando ya tenemos todo lo necesario para poder desplegar un WordPress en Windows Azure.
> package create
-in="C:tempWordPress"
-out="C:tempWordPressbuild" -dev=false
Una vez generamos los empaquetados, podríamos conectarnos al portal, crear un servicio hosteado y desplegar la aplicación, tal y como veíamos en el post anterior. Una vez desplegado, tendremos que seguir configurando WordPress, tal y como haríamos en una instalación on-premise, esto ya no es algo propio de Windows Azure.
Una vez que entramos en el portal, también podríamos configurar WordPress para que pueda ser multisite.
La peculiaridad que hay que tener en cuenta, es que cuando configuramos la red para multisite se nos piden que hagamos unos cambiaos en el fichero wp-config.php. Estos cambios no los tenemos que hacer en este fichero, sino a través de la opción “Configure” que tenemos en el portal de administración.
Y ya por último, tendremos que activar y configurar el plugin que permite trabajar a WordPress con el Windows Azure Storage. Este servicio proporciona almacenamiento persistente del contenido de WordPress.
Y ya está, ya tenemos WordPress en Azure!!
Y recordad por último, si queréis añadir un plugin, un tema o cualquier cosa que no se guarde en la base de datos o el Storage, implicará un redespliegue de la aplicación, ya que las máquinas de Windows Azure son máquinas sin estado.