Instalando PostgreSQL e PGAdmin com Docker
- #Docker
- #PostgreSQL
- #Java
A muito tempo atrás eu tive problemas com o PGAdmin no linux. Me vi na necessidade de fazer a instalação do mesmo através do docker. Com isso eu pouparia minha máquina de ficar "suja" e ainda consegui evitar esse erro que era uma particularidade da distro que eu utilizava (eu não queria trocá-la).
Com isso, eu criei um rascunho de um docker-compose.yml que toda vez que eu precisasse de um banco de dados rapidamente e ainda poder gerenciá-lo, EM QUALQUER MÁQUINA eu subiria o container e então estaria com a ferramenta ali à mão.
O que eu preciso?
Você precisa estar disposto, uma vez que o docker se trata de uma nova ferramenta a se aprender e certamente você utilizará muito em sua jornada de desenvolvedor.
Além disso, você precisa, claro, do Docker instalado. Isso você pode fazer acessando aqui: https://docs.docker.com/engine/install/
O próprio site tem um tutorial de como instalá-lo e acredito que ele seja bem compreensível. Entretanto se ainda encontrou dificuldades, deixa aqui nos comentários e eu irei CORRENDO te ajudar hehe!
Instalei o danado e agora?
Agora você escolhe um diretório em seu computador e cria um arquivo chamado docker-compose.yml
Dentro desse arquivo você deve colar o seguinte código:
version: '3'
services:
postgres-compose:
image: postgres
environment:
POSTGRES_PASSWORD: "admin@123"
POSTGRES_USER: "admin"
volumes:
- /caminho/de/sua/preferencia:/var/lib/postgresql/data
ports:
- "15432:5432"
networks:
- postgres-compose-network
pgadmin-compose:
image: dpage/pgadmin4
environment:
PGADMIN_DEFAULT_EMAIL: "admin@admin.com"
PGADMIN_DEFAULT_PASSWORD: "admin@123"
ports:
- "16543:80"
depends_on:
- postgres-compose
networks:
- postgres-compose-network
networks:
postgres-compose-network:
driver: bridge
Perceba que no arquivo há essa linha:
volumes:
- /caminho/de/sua/preferencia:/var/lib/postgresql/data
Você deve trocar /caminho/de/sua/preferencia para o local do seu host, isto é, local onde você persistirá os dados do seu banco na sua máquina local. Um exemplo de host é que eu uso é:
/home/ldnovaes/Documentos/Docker/postgresPgadmin
Salve o arquivo e então abra o terminal no mesmo diretório que está o seu docker-compose.yml
No terminal de sua escolha digite:
docker-compose up --build -d
Isso deve inicializar o contêiner e você já terá acesso ao seu banco de dados + o gerenciador.
Abrindo o PGAdmin e criando um novo Banco de Dados
Em seu navegador digite: http://localhost:16543/
Você deve ver uma tela como essa:
Em email você usa a credencial que colocamos no docker-compose: admin@admin.com
e em senha coloque: admin@123. Aqui você pode também definir o idioma para o Português do Brasil.
A próxima tela, após esse login é onde configuraremos o banco que subimos dentro do container.
Clique com o Botão Direito do Mouse em Server > Registrar > Servidor.
Isso deve abrir uma interface logo de cara para que você insira alguns dados que irei disponibilizar:
Em nome, você pode colocar o de sua preferência. Normalmente eu coloco localhost, mas escolha o nome mais confortável para você.
Após inserir o nome, não se preocupe com nenhum dado nessa tela, cliique em Conexão. Essa é a tela que deve aparecer para você:
Aqui é onde está o pulo do gato! Você deve colocar exatamente esses dados:
Em HostName/adress: postgres-compose
Em Username: admin
Em password: admin@123
Pronto, agora você está com seu banco de dados operacional e ainda com o gerenciador do mesmo. Futrique a vontade e procure tutoriais na internet para o que for fazer. Lembrando que ele não foi instalado em sua máquina. Toda vez que você for iniciá-lo é bom que repita o passo do docker-compose up --build -d para que você consiga acessar os seus bancos. Qualquer aplicação local pode usá-lo também.