Docker.pdf


Vista previa del archivo PDF docker.pdf


Página 1...76 77 78798091

Vista previa de texto


/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

Ahora sólo queda realizar el build de nuestra imagen y luego ejecutar un
contenedor :)
$ docker build -t wordpress .
$ docker run -d -p 80:80 wordpress

Una vez funcionando, ingresando en http://<IP_OF_DOCKER_HOST> deberíamos
visualizar la página de instalación de wordpress.
Nota:
Usar Supervisor para ejecutar varios servicios dentro del mismo contenedor,
podría trabajar perfectamente, pero es mejor usar múltiples contenedores. Estos
proveen del aislamiento (isolation) entre otras bondades de Docker, y nos ayuda
además a crear una aplicación basada en microservicios. Por último, también
esto nos ayuda a escalar y a recuperarnos de posibles fallas.

Corriendo Wordpress usando 2 contenedores
linkeados.
Problema:
Hasta ahora ejecutamos una instancia de wordpress con su servidor y su base
de datos, en un mismo contenedor. El problema es que no explotamos al
máximo a Docker, y no mantenemos tampoco el concepto de Separation of
concerns. Necesitamos desacoplar el contenedor lo más fino posible.
Solución:
Usar 2 contenedores. Uno para Wordpress y otro para MySql. Luego se
interconectarán mediante la opción de docker --link.
Manos a la obra:
Para este ejemplo usaremos las imágenes docker oficiales de wordpress y
mysql.
$ docker pull wordpress:latest
$ docker pull mysql:latest

Ejecutamos un contenedor MySql
$ docker run --name mysqlwp -e MYSQL_ROOT_PASSWORD=wordpressdocker \
-e MYSQL_DATABASE=wordpress \