Contenha seus dados: execute o MariaDB com o Docker

Publicados: 2022-10-25

MariaDB é um servidor de banco de dados gratuito que fornece acesso a dados usando uma linguagem de consulta estruturada (SQL). Ele oferece recursos de segurança como senhas, controle de acesso baseado em função e muito mais para proteger seus dados.

Para implantar o MariaDB e conceder acesso aos dados aos seus usuários, você precisa hospedar o servidor de banco de dados. Você pode optar por um provedor de nuvem ou usar serviços de hospedagem gerenciada ou compartilhada.

Este artigo ensinará como executar o MariaDB usando um contêiner do Docker, configurar e executar o servidor de banco de dados e conectá-lo a um site WordPress.

O que é Docker?

O Docker é uma ferramenta de desenvolvedor gratuita que permite executar aplicativos em um ambiente controlado chamado contêiner. Os contêineres têm código de aplicativo, dependências e ferramentas críticas do sistema para executar seu aplicativo. Isso permite que você forneça aplicativos robustos em todo o ciclo de vida de desenvolvimento de software.

Normalmente, os contêineres usam seu sistema operacional como host. Isso significa que o kernel da máquina host fornece acesso a recursos como CPUs, memória e sistema de arquivos. Como resultado, isso não requer virtualização tradicional, como máquinas virtuais. Existem várias vantagens de usar o Docker para executar uma instância MariaDB:

  • Possui uma pequena pegada digital, garantindo o uso eficiente dos recursos do sistema.
  • É consistente, permitindo que os desenvolvedores executem aplicativos em implantações de produção e teste com alterações mínimas.
  • Ele fornece um mecanismo flexível para compartilhamento de recursos.
  • É escalável — você pode executar vários contêineres em um único host.

Como implantar o MariaDB com o Docker

Nesta seção, você criará ambientes em contêiner para executar o MariaDB usando o Docker. Você aprenderá sobre a tecnologia de contêiner oferecida pelo Docker. O Docker funciona na maioria das versões das distribuições Windows, macOS e Linux. Para este tutorial, você precisará ter o Windows 10/11, Ubuntu 20.04 ou uma máquina macOS X para acompanhar.

1. Instale o Docker

Um dos melhores recursos do Docker é sua portabilidade. Ele usa o sistema operacional do host, tornando-o ideal para ambientes de teste e publicação. Esta seção ensinará como instalar o Docker nos três sistemas operacionais.

Ubuntu 20.04

Primeiro, atualize a lista de pacotes do Ubuntu.

 sudo apt-get update

Em seguida, permita o acesso aos repositórios online por meio de HTTPS.

 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Instalando o docker pelo terminal.
Em seguida, adicione a chave GPG do Docker.

 sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Agora, adicione o repositório do Docker.

 echo deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Em seguida, atualize os pacotes do Ubuntu para incluir o repositório do Docker.

 sudo apt-get update

Por fim, instale o Docker Engine.

 sudo apt-get install docker-ce

Se você estiver usando uma distribuição Linux diferente, como Debian ou Fedora, siga a documentação oficial para Instalar o Docker no Linux.

Windows 10/11

O Docker está disponível no Windows 10 ou 11 usando o Windows Subsystem for Linux versão 2 (WSL 2) como back-end. Use as etapas a seguir para instalar o Docker.

Primeiro, habilite o recurso Virtual Machine Platform em seu sistema Windows. Isso permite que você instale o WSL 2 e instale e execute uma instância Linux virtualizada em sua máquina Windows.

Em seguida, instale o WSL.

Em seguida, visite a Microsoft Store para baixar o Ubuntu 20.04.

Por fim, baixe o Docker Desktop para Windows. Abra o arquivo baixado para iniciar o processo de instalação.

Após a instalação, pesquise “Docker Desktop” na barra de tarefas e abra-o.

( Observação: você precisará usar o PowerShell como seu terminal para usar os comandos do Docker.)

Mac OS X

O Docker está disponível em máquinas macOS por meio da Apple App Store. Existem dois instaladores disponíveis que visam os chips Intel e Apple.

Primeiro, baixe o instalador apropriado de um dos links acima. Em seguida, clique duas vezes para abrir o arquivo .dmg baixado.

Em seguida, arraste e solte o ícone do Docker na pasta Aplicativos .

Agora, abra o aplicativo Docker na pasta Aplicativos e siga os prompts para concluir a configuração.

Quando o processo de instalação for concluído, clique duas vezes no ícone do Docker na barra de status da área de trabalho para abri-lo.

Use o terminal padrão para executar comandos do Docker.

2. Baixe uma imagem MariaDB

Uma imagem do Docker fornece uma coleção de comandos e configurações para criar um contêiner do Docker. É responsável por instalar tudo o que é necessário para executar um aplicativo. Você pode encontrar a imagem oficial do MariaDB no Docker Hub.

Para baixar a imagem do MariaDB do Docker Hub, você precisará usar o comando docker pull :

 docker pull mariadb

Você também pode visualizar uma lista de imagens do Docker baixadas executando o seguinte:

 docker images

Esta é a saída do comando:

Listando imagens do Docker.
Listando imagens do Docker.

3. Crie um contêiner

Um contêiner é uma unidade de software com todo o código, dependências e ferramentas de sistema necessárias para executar um processo ou programa. Você usará a imagem baixada antes para criar um contêiner MariaDB.

 docker create mariadb --name mariadb-wp -i –t

Isso cria um contêiner MariaDB chamado mariadb-wp . O sinalizador –i permite uma sessão interativa e a opção –t cria um pseudo-terminal. A documentação oficial fornece informações sobre todas as variáveis ​​disponíveis.

4. Executar, pausar e parar o contêiner

O Docker oferece aos desenvolvedores a flexibilidade de ambientes configuráveis. Nesta seção, vamos configurar o container do MariaDB com variáveis ​​de ambiente para configurar propriedades de sistema específicas para o seu container.

MariaDB tem muitas variáveis ​​que você pode definir, como nomes de banco de dados, senhas e usuários de banco de dados. Para obter uma lista mais ampla de variáveis ​​de ambiente com suporte, consulte a documentação do Docker para MariaDB.

 docker run -d --name mariadb-wp -p 3306:3306 -v '/path/on/host/:/var/lib/mysql' -e "MARIADB_ROOT_PASSWORD=" -e "MARIADB_DATABASE=wordpress" -e "MARIADB_USER=wordpress" -e "MARIADB_PASSWORD=" mariadb

O comando acima configura a senha root do MariaDB, usuário do banco de dados e senha associada. Em seguida, ele executa o MariaDB na porta 3306. Você pode decidir pausar a execução de um aplicativo de contêiner com o seguinte comando:

 docker pause mariadb-wp

Por fim, você também pode interromper um aplicativo em execução dentro de um contêiner usando o seguinte comando:

 docker stop mariadb-wp

5. Conecte o MariaDB Containerizado a um Site WordPress

Agora, precisamos conectar o MariaDB a um site WordPress externo. Você pode aprender mais sobre como criar um site WordPress localmente aqui.

No diretório raiz do site WordPress, abra o arquivo wp-config.php em seu editor de código. Localize a seção de código que define as variáveis ​​para o banco de dados e edite-a, conforme mostrado abaixo. Certifique-se de usar o nome do banco de dados, a senha e o número da porta ao criar o contêiner MariaDB.

 define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'http://localhost:3306');

Em seguida, você precisa importar um dump de banco de dados do seu site WordPress para o MariaDB em contêiner. Primeiro, certifique-se de ter exportado o banco de dados atual para o site. Para saber mais, confira nosso tutorial de backup de banco de dados MySQL.

Depois de exportar seu banco de dados, instale o dump do banco de dados dentro do contêiner.

 docker exec -i mariadb-wp sh -c 'exec mysql -u root -p "$MARIADB_ROOT_PASSWORD" < /some/path/on/your/host/all-databases.sql'

O comando docker exec permite que os desenvolvedores executem comandos shell dentro do contêiner. Importamos um banco de dados para o MariaDB usando um arquivo exportado no comando acima.

6. Adicione um novo post ao seu site WordPress

Criaremos uma postagem de exemplo usando a conta de administrador do WordPress para testar essa integração.

Primeiro, faça login no WordPress e clique em Posts > Add New . Preencha os detalhes conforme mostrado abaixo e clique em Publicar . Depois de criar a postagem, clique em Exibir postagem para visualizar a postagem recém-adicionada.

Adicionando uma nova postagem no editor WordPress Gutenberg.
Adicionando uma nova postagem no editor do WordPress.

E isso é tudo o que há para isso!

7. MariaDB e Docker com DevKinsta

O aplicativo gratuito da Kinsta, DevKinsta, permite que os desenvolvedores criem sites WordPress em contêiner de forma eficiente. O aplicativo usa o Docker para configurar versões do PHP, servidores de banco de dados e servidores web. O aplicativo DevKinsta oferece suporte a desenvolvedores que usam macOS, Windows e Ubuntu/Linux.

Para começar, baixe, instale e inicie o DevKinsta em sua máquina local. O aplicativo oferece três opções: criar um novo site WordPress, importar um existente da Kinsta ou criar um site personalizado.

Nova tela de criação de site do DevKinsta.
Nova tela de criação de site do DevKinsta.

Criar um novo site WordPress é tão fácil quanto preencher um formulário simples e clicar em Criar site .

Nova tela de criação de site WordPress do DevKinsta.
Nova tela de criação de site WordPress do DevKinsta.

Parabéns - você agora criou um site WordPress em contêiner usando o DevKinsta!

Resumo

O Docker é uma ferramenta amigável ao desenvolvedor para software de conteinerização que executa servidores de banco de dados como MariaDB. Seus ambientes minimalistas ajudam a manter a eficiência dos recursos do sistema sem sacrificar a funcionalidade.

Este tutorial ensinou como instalar o Docker, configurar o MariaDB e conectar um site WordPress ao seu banco de dados MariaDB em contêiner. Além disso, você aprendeu a usar o DevKinsta para criar um site WordPress totalmente em contêiner.

Há muito mais para explorar com a criação de sites WordPress e suas inúmeras soluções de hospedagem. Se você deseja descobrir o quão fácil pode ser o gerenciamento do seu site, a hospedagem gerenciada do WordPress da Kinsta o cobre.