Pesquisar este blog

domingo, 13 de setembro de 2020

Como instalar e usar, MariaDb com o Docker

 Neste post será mostrado como instalar e usar o MariaDb com o Docker, se você ainda não sabe o que é o Docker, aqui temos um post que explica como ele funciona.

Introdução:

Antes de começar, certifique-se de ter o docker instalado na sua máquina, para fazer isso:

No windows:

Abra o CMD e use um dos seguintes comandos:

docker --version

ou

docker-compose --version

ou

docker ps

Se você não tiver nenhum erro ao executar algum destes comandos e a verrsão for mostrada na tela, pronto o docker já está instalado na sua máquina.

No Linux e Mac:

Abra um terminal e rode o seguinte comando:

docker --version

Caso nenhum erro aconteça e a versão do docker for mostrada no terminal, pronto está tudo certo e você pode continuar.

Instalando uma imagem do Mariadb:

O processo de instalação com o docker é bem simples, para fazer isso basta achar uma imagem do que você deseja instalar, e no caso do Mariadb, existem diversas imagens disponíveis gratuitamente, aqui vamos usar a versão oficial, para fazer isso basta executar o seguinte comando no CMD/Terminal:

docker pull mariadb/server

Com este comando ele irá baixar a versão mais recente do servidor do mariadb, como resposta a ele temos a seguinte saída:

$ docker pull mariadb/server
Using default tag: latest
latest: Pulling from mariadb/server
7595c8c21622: Pull complete
d13af8ca898f: Pull complete
70799171ddba: Pull complete
b6c12202c5ef: Pull complete
69489d4b50c9: Pull complete
9f96a63e93c1: Pull complete
25c7f3eb141b: Pull complete
c41dc96a05b4: Pull complete
0b1165703f02: Pull complete
46c2bcef0880: Pull complete
3a085a383697: Pull complete
aee546b35dc6: Pull complete
f1d8894f6fb0: Pull complete
455851a7a727: Pull complete
Digest: sha256:e40e539ec4dbf9a0c84eb3725828682589f24763840f61e504a1dc60bbbdc3be
Status: Downloaded newer image for mariadb/server:latest
docker.io/mariadb/server:latest

Estes códigos alfanuméricos que aparecem, são referentes as camadas que o docker tem que baixar, ao final ele mostra no Status, que uma imagem nova foi baixada.

Para se certificar que a imagem foi corretamente baixada, execute o comando de listagem das imagens:

$ docker images
REPOSITORY                                      TAG                            IMAGE ID            CREATED             SIZE
mariadb/server                                  latest                         e59408954028        3 weeks ago         358MB

Neste caso a imagem baixada tem 358Mb de tamanho e ela foi criada há semanas atrás.

 Uma imagem, ainda não é um software rodando, é apenas um software executável, que foi baixado na nossa máquina, para rodá-lo, será necessário criar um container, pra fazer isso executamos o seguinte comando:

docker run --name mariadbtest -e MYSQL_ROOT_PASSWORD=senha_teste -d mariadb/server

Atente pras partes do comando que serão o nome da imagem, e a senha usada para acessar. Caso você não queira dar um nome, um id será gerado pelo docker.

Para se certificar que a sua imagem está rodando, utilize o seguinte comando:

 $ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
991e141f5dfd        mariadb/server      "docker-entrypoint.s…"   5 minutes ago       Up 5 minutes        3306/tcp            mariadbtest

Veja que aqui temos todas as informações, da imagem, incluindo a porta que ela está usando, e também há quanto tempo ela está rodando.

Conectando ao banco de dados

Agora a primeira coisa que nos vem a cabeça é tentar executar uma conexão ao localhost, já que o banco está rodando. Porém isso não funciona, uma vez que este banco instalado, está rodando em um container e o seu sistema de arquivos estará isolado do Sistema Operacional corrente, para acessar o sistema de arquivos da sua imagem, utilize o comando a seguir:

 $ docker exec -it mariadbtest bash

 A partir deste momento, você estará acessando o terminal da sua imagem, e nele é possível executar e fazer alterações de configuração no seu servidor. Na imagem que está sendo usada neste post, nenhuma configuração é necessária para acessar o banco, pois este container já vem com uma interface de rede, e o banco estará liberado para receber conexões através dela, agora será necessário descobrir qual é o ip deste container, isso é feito através do comando:

$ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mariadbtest
172.17.0.2

Sabendo o ip do container, agora basta conectar usando a senha que foi usada na execução da imagem:

 $ mysql -h 172.17.0.2 -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.5.5-10.4.14-MariaDB-1:10.4.14+maria~bionic mariadb.org binary distribution

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Depois de digitar a senha, você entra no console do banco de dados e isso significa que tudo foi executado corretamente.

Nenhum comentário:

Postar um comentário