Pesquisa de site

Implante pilhas LAMP e/ou LEMP facilmente usando Docker


Depois de ler o título deste guia, você deve estar se perguntando por que devemos implantar pilhas LAMP e LEMP usando Docker? Por que não podemos simplesmente instalá-lo manualmente? Configurar a pilha LAMP e LEMP é muito fácil, então por que deveríamos complicar com o Docker? Deixe-me responder suas perguntas. Acredite em mim, implantar LAMP ou LEMP ou qualquer outra pilha usando Docker é muito mais fácil do que instalá-los manualmente.

Por que precisamos implantar pilhas LAMP/LEMP usando Docker?

Como você provavelmente sabe, o Docker é uma solução de virtualização leve e em nível de sistema operacional. Você não precisa de nenhum tipo de software de virtualização, como VirtualBox, Xen ou VMWare etc., para testar e implantar vários sistemas operacionais. Para obter mais detalhes sobre a instalação e uso do Docker, consulte o link a seguir.

  • Docker – virtualização leve com contêineres Linux

E por que precisamos implantar pilhas LAMP ou LEMP com Docker? Porque podemos facilmente obter imagens LAMP ou LEMP prontas e executá-las instantaneamente em alguns minutos. Não há necessidade de se complicar instalando manualmente os softwares Apache, MySQL/MariaDB e PHP, um por um. Digamos que você seja um desenvolvedor, um testador ou qualquer entusiasta de software aleatório e queira testar um aplicativo baseado na web. Para instalar um aplicativo baseado na web, você deve configurar o Apache/Nginx, MySQL/MariaDB e PHP (isso é o que chamamos de pilhas LAMP ou LEMP). Este será um processo demorado. É aqui que o Docker ajuda.

Usando o Docker, você pode baixar e implantar facilmente aplicativos pré-configurados instantaneamente, sem muitos problemas, e começar a usá-los em minutos. Parece bom? Bem, deveria ser.

Agora, vamos entrar no assunto. Este tutorial mostrará como implantar pilhas LAMP ou LEMP com Docker.

Implantando pilhas LAMP/LEMP usando Docker

Depois de instalar o Docker conforme descrito no link acima, vamos procurar as pilhas LAMP/LEMP prontas.

Para fazer isso, execute:

sudo docker search lamp

Exemplo de resultado:

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 você pode ver no resultado acima, existem muitas imagens de pilha LAMP prontas disponíveis para Arch Linux, CentOS e Ubuntu. As imagens são classificadas por classificação.

Da mesma forma, você pode pesquisar imagens Docker da pilha LEMP com o comando:

sudo docker search lemp

Em seguida, extraia uma imagem Docker de sua escolha. Aqui, vou baixar a imagem nickistre/ubuntu-lamp.

docker pull nickistre/ubuntu-lamp

Exemplo de resultado:

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

O comando acima irá baixar a pilha LAMP para Ubuntu. Você pode baixar as pilhas LAMP para outras plataformas, como CentOS, Arch Linux.

Como alternativa, você pode pesquisar, fazer download e implantar imagens do Docker no Docker Hub, onde milhares das imagens mais populares estão hospedadas.

  • Baixar imagens do Docker

Procure as imagens da pilha LAMP e baixe-as.

Clique nas imagens do Docker para ver mais detalhes, como instalar e usar.

As imagens baixadas serão salvas localmente no diretório /var/lib/docker/.

Para listar as imagens Docker baixadas, execute o seguinte comando:

docker images

Exemplo de resultado:

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

Bem, depois de baixar a imagem Docker para a pilha LAMP/LEMP, execute-a usando o comando:

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

Depois de executar o comando acima, você estará automaticamente conectado ao diretório raiz da web do Container como usuário ‘root’.

root@184851ac9ebd:/#

Inicie o serviço Apache usando o comando:

service apache2 start

Então, serviço MySQL usando o comando:

service mysql start

Verifique se o servidor Apache está funcionando. Para fazer isso, abra seu navegador e navegue até http://container_IP/.

Para encontrar o endereço IP, basta digitar ‘ifconfig’ ou ‘ip addr’ no Terminal do Container.

Você deverá ver a página de teste do servidor Apache.

Você pode verificar a versão do Apache, MySQL e PHP usando comandos:

apache2 -v
mysql -v
php -v

É isso. A pilha LAMP no Ubuntu foi implantada. Agora você pode começar a implantar e testar seus aplicativos baseados na web.

Nota para iniciantes:

Use o Docker apenas para fins de teste e desenvolvimento. Além disso, não confunda Docker com outras ferramentas de virtualização. O Docker não implantará a pilha LAMP ou qualquer outro aplicativo diretamente em seu sistema host. O que exatamente o Docker fará é configurar um sistema operacional convidado (nós o chamamos de ‘contêiner’) e implantar a pilha LAMP dentro do sistema operacional convidado. Tecnicamente, é igual a outras tecnologias de virtualização, mas a principal diferença é que, diferentemente de outros métodos de virtualização, como VirtualBox, KVM e VMware, os sistemas convidados (contêineres) usam o kernel do sistema host. Todos os convidados compartilharão com eficiência os recursos como CPU, RAM, disco rígido e rede, etc. do seu computador host original. Espero que você esclareça agora.

É tudo por agora. Estarei aqui em breve com outro guia interessante. Até então, fique ligado no Unixmen.

Saúde!

Artigos relacionados: