Seja para estudos / experimentos, ou até para desenvolver aplicações completas, com o Docker fica bem mais simples de prover a infraestrutura que precisamos. Neste post, mostro como faço para subir o PostgreSQL e o pgAdmin para ambiente de desenvolvimento.
Antes de tudo, você precisa ter o Docker (com Docker Compose) rodando em sua máquina.
Para rodar o Docker no Windows, você deveria pode utilizar o WSL. Caso não saiba do que isso se trata, consulte a documentação da Microsoft, ela está muito bem feita!
Na pasta raíz do seu projeto, crie um arquivo chamado docker-compose.yaml
, com o seguinte conteúdo:
version: "3.8"
services:
postgres:
image: postgres:15.2-alpine
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: secret
ports:
- 5432:5432
pgadmin:
depends_on:
- postgres
image: dpage/pgadmin4:6.20
environment:
PGADMIN_DEFAULT_EMAIL: admin@host.com
PGADMIN_DEFAULT_PASSWORD: secret
ports:
- 5480:80
Para iniciar os serviços, basta rodar o comando:
docker-compose up
Se preferir, você pode iniciar os serviços em background. Para isso, use a flag -d
, assim:
docker-compose up -d
Gerenciar o PostgreSQL com psql
Para testar o setup, podemos nos conectar ao Postgres usando o psql dentro do nosso container.
Execute o shell com o comando:
docker-compose exec postgres /bin/sh
Faça login no psql:
psql -U admin
Liste os bancos de dados:
\l
Gerenciar o PostgreSQL com pgAdmin
Como alternativa ao psql, podemos utilizar uma interface gráfica para gerenciar o Postgres. Uma das opções aqui é o pgAdmin.
Em seu navegador preferido, acesse http://localhost:5480
.
Faça login no pgAdmin com as credenciais: admin@host.com
/ secret
.
String de conexão PostgreSQL
Para conectar suas aplicações ao Postgres, basta informar a string de conexão.
Troque db-name
pelo nome do banco de dados ao qual deseja utilizar em sua aplicação:
postgresql://admin:secret@localhost:5432/db-name