Usando contêineres do Docker com WordPress
Publicados: 2022-06-30A execução de sites WordPress pode envolver o uso de um grande número de configurações e dependências de software para produzir produtos de alta qualidade. Você deve ter se perguntado se existe uma maneira mais fácil de desenvolver esses tipos de projetos localmente sem executar tantos pacotes de software diferentes em sua própria máquina.
Felizmente, o Docker é um produto que oferece uma solução para uma configuração mais rápida e suave do WordPress. Mais do que apenas uma máquina virtual, o Docker fornece contêineres para desenvolvimento de sites WordPress, além de outros aplicativos e softwares. O Docker também pode ajudá-lo a preparar aplicativos para envio para outras plataformas com facilidade, simplificando seu fluxo de trabalho.
Neste artigo, veremos o que são exatamente os contêineres e como eles afetam o desenvolvimento. Em seguida, veremos como configurar um contêiner para desenvolvimento local do WordPress e prepará-lo para produção. Vamos começar!
O que são contêineres?
Instalar o WordPress não é um passeio no parque, e pode ser difícil desenvolver um site WordPress. Em termos de desenvolvimento web, containers são unidades padronizadas de software que empacotam seu código e todas as suas dependências, então a implantação do WordPress se torna muito mais fácil. Vários contêineres também possibilitam fazer isso de forma confiável de um ambiente para outro.
Embora o Docker seja um tipo de virtualização, é diferente das máquinas virtuais (VMs) comuns. Enquanto as VMs usam um espaço precioso, adicionando o sistema operacional host ao espaço do usuário para cada aplicativo, o desenvolvimento em contêiner compartilha isso em todos os contêineres.
A verdadeira beleza do Docker é que ele será executado da mesma forma, não importa em que tipo de sistema operacional você esteja. Além disso, você pode executar muitos contêineres do Docker em uma máquina que, de outra forma, teria dificuldades com o mesmo número de VMs. Você também não precisa se preocupar com nenhum dos erros que o desenvolvimento local pode causar. Isso também é conhecido como o enigma 'mas funciona na minha máquina' no desenvolvimento de aplicativos.
Introdução ao Docker
O Docker tem muitos produtos diferentes, que se combinam para criar um poderoso conjunto de ferramentas para desenvolvedores. Você pode começar a usar o Docker Engine baixando a versão Community gratuitamente:
Você precisará criar uma conta do Docker para baixar o mecanismo. Então você vai querer se familiarizar com a documentação de 'começar' do Docker. Você terá oito versões diferentes do Docker para escolher. Para este exemplo, vamos baixar o Docker Desktop para Mac:
Você precisará fazer login na sua conta do Docker para baixar o mecanismo. Além disso, você deve certificar-se de ter um aplicativo de terminal em seu computador pronto para ser usado.
Usando um contêiner para WordPress (com Docker)
Para usar contêineres do Docker para desenvolver um site WordPress localmente, você também usará outro aplicativo Docker. Abordaremos como instalar o Compose em breve, mas é importante saber que essa ferramenta é usada para definir e executar aplicativos de vários contêineres no Docker. Então, você está pronto para pular direto!
Etapa 1: instalar o Compose
Antes de entrar em ação com o Docker, verifique se instalou o Compose. Se você estiver executando o Docker Desktop para Mac ou Windows, o Compose vem pré-instalado:
Se você estiver trabalhando no Linux, precisará usar o Terminal para executar os comandos de instalação. Lembre-se de que o Compose depende do Docker Engine. Você precisará ter ambos instalados para se envolver em qualquer desenvolvimento do WordPress.
O Compose usa um arquivo YAML Ain't Markup Language (YAML) para configurar todos os serviços do seu aplicativo. Essa é uma maneira amigável de apresentar a serialização de dados e funciona com todas as linguagens de programação. Nesse caso, o arquivo YAML configurará as informações de banco de dados necessárias para o WordPress.
Etapa 2: definir o projeto
Depois de instalar o Docker Engine e o Compose, você pode começar seu primeiro projeto de desenvolvimento do WordPress. Você precisará criar um novo diretório de projeto vazio usando o comando 'make directory':

mkdir new_wordpress/
O diretório que você configurar será o contexto do seu desenvolvimento e conterá apenas os itens necessários, incluindo o arquivo docker-compose.yaml. Criaremos esse arquivo na próxima etapa.
Em seguida, você pode mover para seu novo diretório usando o seguinte comando:
cd new_wordpress/
Agora você estará em seu novo diretório de projeto e pronto para começar a trabalhar.
Etapa 3: criar um arquivo do Docker para YAML
Agora, você precisará criar um novo arquivo docker-compose.yaml. Isso criará sua nova instalação do WordPress e o banco de dados MySQL necessário. Seu arquivo conterá todas as informações do WordPress e do seu banco de dados, incluindo portas, bancos de dados, nomes de host e senhas necessários.
Seu arquivo YAML ficará assim:
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
Vale a pena notar que os volumes do Docker contêm dados persistentes e você pode querer consultar a documentação sobre volumes para ficar totalmente atualizado.
Etapa 4: construir o projeto
Agora que você configurou o arquivo YAML, precisará executar o comando que extrairá todas as imagens necessárias e configurará seu projeto WordPress. De dentro do diretório do seu projeto, você executará o seguinte comando:
docker-compose up -d
Agora você deve ver que o Docker está 'puxando' nas imagens MySQL e WordPress.
Vale a pena notar que as páginas de imagem do Docker Hub contêm muitas informações valiosas sobre os contêineres MySQL e WordPress:
Considere este seu guia de referência completo com comandos úteis para a imagem do contêiner. Eles valem a pena marcar para uso posterior.
Etapa 5: acesse sua instalação do WordPress
Como você está instalando este site localmente, precisará usar a porta indicada em seu arquivo YAML em vez do script típico do WordPress /install.php
. Como estamos usando o Docker Desktop para Mac em nosso exemplo, usaremos https://localhost
como o endereço IP e abriremos a porta https://localhost:8000
. Esta foi a porta designada em seu arquivo YAML.
Você provavelmente estará em território familiar agora se já instalou o WordPress antes e pode concluir o processo de 'famosa instalação de cinco minutos':
Pode ser necessário dar ao Docker alguns minutos para carregar e inicializar completamente as imagens, mas você pode acessar o WordPress em um navegador para concluir as etapas de instalação padrão.
É recomendável que você 'encerre e limpe' depois de concluir a instalação também. Para fazer isso, você pode usar o comando 'down' do Docker. Isso interromperá e removerá os contêineres, mas preserva o banco de dados do WordPress. Há algumas coisas para entender sobre pausar, matar e parar contêineres se você estiver usando o Docker, então vale a pena ler mais sobre o tópico.
Posso enviar uma imagem do WordPress para o servidor de produção?
É importante observar aqui que os sites hospedados nos servidores WP Engine não têm o acesso root necessário para configurar uma nova imagem docker. No entanto, se seu site estiver em um servidor de produção, você poderá seguir as etapas abaixo para enviar sua imagem.
Agora que você criou uma imagem do WordPress localmente, pode estar se perguntando como pode usar a mesma imagem em um servidor de produção. Algumas das etapas que você acabou de concluir serão as mesmas, mas primeiro você precisará criar um repositório privado no Docker Hub.
Para levar seu contêiner do WordPress Docker para produção, você precisará usar sua conta do Docker e enviar a imagem para um repositório privado. A partir daí, você pode seguir as mesmas etapas que analisamos anteriormente, mas você puxará a imagem do seu repositório diretamente para o servidor de produção alterando as informações da porta em seu arquivo YAML.
Existe uma opção gratuita para usar repositórios privados, mas você só pode criar um. Felizmente, o Docker tem muitos níveis de preços para atender às necessidades de qualquer desenvolvedor:
Em última análise, se você deseja melhorar seu fluxo de trabalho de desenvolvimento ou está apenas começando nessa área, o Docker é uma excelente ferramenta para ter em seu kit de recursos. Ele também fornece muita documentação e suporte úteis.
Construa algo ótimo com o WP Engine
Agora que você foi orientado para o Docker, pode estar ansioso para entrar e começar a desenvolver alguns novos aplicativos para configurar um site WordPress. Lembre-se de que um dos maiores benefícios do Docker é que você saberá que seus aplicativos não apresentarão erros peculiares específicos da máquina.
Aqui no WP Engine, adoramos compartilhar os melhores recursos de desenvolvedor para que você possa criar experiências digitais incríveis para seus clientes. Esteja você na fase de desenvolvimento, preparação ou produção do seu projeto, temos planos de hospedagem e soluções digitais inovadoras para você!
Quer conhecer outras maneiras de instalar aplicativos WordPress rapidamente? Ou talvez outras maneiras de configurar um site WordPress? Deixe-nos saber seus pensamentos na seção de comentários.