Búsqueda de sitios web

Implemente pilas LAMP y/o LEMP fácilmente usando Docker


Después de leer el título de esta guía, quizás se pregunte por qué deberíamos implementar pilas LAMP y LEMP usando Docker. ¿Por qué no podemos simplemente instalarlo manualmente? Configurar la pila LAMP y LEMP es muy fácil, entonces ¿por qué deberíamos complicarnos con Docker? Déjame contestar tus preguntas. Créame, implementar LAMP o LEMP o cualquier otra pila usando Docker es mucho más fácil que instalarlos manualmente.

¿Por qué necesitamos implementar pilas LAMP/LEMP usando Docker?

Como probablemente sepa, Docker es una solución de virtualización liviana y a nivel de sistema operativo. No necesita ningún tipo de software de virtualización como VirtualBox, Xen o VMWare, etc., para probar e implementar múltiples sistemas operativos. Para obtener más detalles sobre la instalación y el uso de Docker, consulte el siguiente enlace.

  • Docker: virtualización ligera con contenedores de Linux

¿Y por qué necesitamos implementar pilas LAMP o LEMP con Docker? Porque podemos extraer fácilmente imágenes LAMP o LEMP listas para usar y ejecutarlas instantáneamente en un par de minutos. No es necesario complicarse instalando manualmente los softwares Apache, MySQL/MariaDB y PHP uno por uno. Supongamos que es un desarrollador, un evaluador o cualquier entusiasta del software y desea probar una aplicación basada en web. Para instalar una aplicación basada en web, debe configurar Apache/Nginx, MySQL/MariaDB y PHP (eso es lo que llamamos pilas LAMP o LEMP). Este será un proceso que llevará mucho tiempo. Aquí es donde Docker viene en ayuda.

Con Docker, puede descargar e implementar fácilmente aplicaciones preconfiguradas al instante sin muchos problemas y comenzar a usarlas en minutos. ¿Suena bien? Bueno, debería serlo.

Ahora, entremos en el tema. Este tutorial le mostrará cómo implementar pilas LAMP o LEMP con Docker.

Implementación de pilas LAMP/LEMP usando Docker

Después de instalar Docker como se describe en el enlace anterior, busque las pilas LAMP/LEMP ya preparadas.

Para hacerlo, ejecute:

sudo docker search lamp

Salida de muestra:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED
 reinblau/lamp Dockerfile for PHP-Projects with MySql client 17 [OK]
 dockie/lamp 6 [OK]
 nickistre/ubuntu-lamp LAMP server on Ubuntu 4 [OK]
 nickistre/ubuntu-lamp-wordpress LAMP on Ubuntu with wp-cli installed 4 [OK]
 nickistre/centos-lamp LAMP on centos setup 3 [OK]
 damienlagae/lamp Docker LAMP with supervisord 3 [OK]
 boolean93/lamp LAMP based on linode/lamp 2 [OK]
 drunomics/lamp 1 [OK]
 avatao/lamp LAMP base image 1 [OK]
 nickistre/ubuntu-lamp-xdebug LAMP on Ubuntu with xdebug installed 1 [OK]
 nickistre/centos-lamp-wordpress LAMP on CentOS setups with wp-cli installed 1 [OK]
 linuxconfig/lamp Automated build LAMP stack environment for... 1 [OK]
 greyltc/lamp a super secure, up-to-date and lightweight... 0 [OK]
 kazaoki/lamp ローカルフォルダをマウントす... 0 [OK]
 greyltc/lamp-gateone LAMP stack with gateone server & webdav 0 [OK]
 fauria/lamp Modern, developer friendly LAMP stack. Inc... 0 [OK]
 drunomics/lamp-memcached LAMP + Memcached base image. 0 [OK]
 rpawel/lamp Apache 2.4 + php5-fpm container 0 [OK]
 lioshi/lamp Docker image for LAMP + MySql under debian 0 [OK]
 nickistre/centos-lamp-xdebug LAMP on centos with xDebug 0 [OK]
 greyltc/lamp-aur LAMP stack (in Arch with php7) with AUR ac... 0 [OK]
 alledia/lamp General LAMP for our tests, based on phusi... 0 [OK]
 greatfox/lamp 0 [OK]
 cnrk/lamp LAMP stack Docker image. 0 [OK]
 grmanit/lamp Based on tutum/lamp with additional settin... 0 [OK]

Como puede ver en el resultado anterior, hay muchas imágenes de pila LAMP listas para usar disponibles para Arch Linux, CentOS y Ubuntu. Las imágenes están ordenadas por calificación.

De manera similar, puede buscar imágenes de Docker de pila LEMP con el comando:

sudo docker search lemp

Luego, extraiga una imagen de Docker de su elección. Aquí, voy a descargar la imagen nickistre/ubuntu-lamp.

docker pull nickistre/ubuntu-lamp

Salida de muestra:

Using default tag: latest
latest: Pulling from nickistre/ubuntu-lamp

faecf96fd5ab: Pull complete 
995977506e98: Pull complete 
efb63fb8dcb6: Pull complete 
a3ed95caeb02: Pull complete 
61626f5cc06d: Pull complete 
d42e54d21590: Pull complete 
4a32d1f581a1: Pull complete 
52f44a8dd6d0: Pull complete 
ce6c1074ae9e: Pull complete 
2fa559435609: Pull complete 
93a433221384: Pull complete 
521d09b9a2d1: Pull complete 
6222edddc59d: Pull complete 
8fa401b50efc: Pull complete 
683063a5d5e0: Pull complete 
1f87fa5088b3: Pull complete 
c5ee1c14048f: Pull complete 
Digest: sha256:e913d43c204b3cdb931156c1a680c712acfe8db531225ec7b9e4708fc7ebe93c
Status: Downloaded newer image for nickistre/ubuntu-lamp:latest

El comando anterior descargará la pila LAMP para Ubuntu. Puede descargar las pilas LAMP para otras plataformas como CentOS, Arch Linux.

Como alternativa, puede buscar, descargar e implementar imágenes de Docker desde Docker Hub, donde se alojan miles de las imágenes más populares.

  • Descargar imágenes de Docker

Busque las imágenes de la pila LAMP y descárguelas.

Haga clic en las imágenes de Docker para ver más detalles, como cómo instalarlas y cómo usarlas.

Las imágenes descargadas se guardarán localmente en el directorio /var/lib/docker/.

Para enumerar las imágenes de Docker descargadas, ejecute el siguiente comando:

docker images

Salida de muestra:

REPOSITORY TAG IMAGE ID CREATED SIZE
nickistre/ubuntu-lamp latest 5e750e4f49e4 2 days ago 633 MB
reinblau/lamp latest 2813b461f843 9 days ago 697.9 MB
hello-world latest 690ed74de00f 5 months ago 960 B

Bueno, después de descargar la imagen de Docker para la pila LAMP/LEMP, ejecútela usando el comando:

docker run -it nickistre/ubuntu-lamp /bin/bash

Después de ejecutar el comando anterior, iniciará sesión automáticamente en el directorio raíz web del contenedor como usuario "raíz".

root@184851ac9ebd:/#

Inicie el servicio Apache usando el comando:

service apache2 start

Luego, el servicio MySQL usando el comando:

service mysql start

Compruebe si el servidor Apache está funcionando. Para hacerlo, abra su navegador web y navegue hasta http://container_IP/.

Para encontrar la dirección IP, simplemente escriba ‘ifconfig’ o ‘ip addr’ en la Terminal del contenedor.

Deberías ver la página de prueba del servidor Apache.

Puede verificar la versión de Apache, MySQL y PHP usando los comandos:

apache2 -v
mysql -v
php -v

Eso es todo. Se ha implementado la pila LAMP en Ubuntu. Ahora puede comenzar a implementar y probar sus aplicaciones basadas en web.

Nota para los principiantes:

Utilice Docker únicamente con fines de prueba y desarrollo. Además, no confunda Docker con otras herramientas de virtualización. Docker no implementará la pila LAMP ni ninguna otra aplicación directamente en su sistema host. Lo que hará exactamente Docker es configurar un sistema operativo invitado (lo llamamos "contenedor") e implementar la pila LAMP dentro del sistema operativo invitado. Técnicamente, es igual que otras tecnologías de virtualización, pero la principal diferencia es que, a diferencia de otros métodos de virtualización como VirtualBox, KVM y Vmware, los sistemas invitados (contenedores) utilizan el núcleo del sistema host. Todos los invitados compartirán de manera eficiente los recursos como CPU, RAM, disco duro y red, etc. de su computadora host original. Espero que te aclares ahora.

Eso es todo por ahora. Estaré aquí pronto con otra guía interesante. Hasta entonces, estad atentos a Unixmen.

¡Salud!