
Posted on • Edited on
Rodando PostgreSQL com Docker Compose + Dashboard
Bom dia, meus amantes de banco de dados! (sei que isso não existe, mas vamos lá — estou tentando quebrar o gelo aqui 🫠)
Quero compartilhar um script para rodar oPostgreSQL usandodocker-compose
, que pode ser útil pra quem quer algo bem simples: só colocar pra rodar, com uma dashboard bonitinha pra visualizar os dados e fazer algumas queries também.
Sem muita enrolação, bora pro código:
version:'3'services:database_postgres:image:postgres:latestports:-5432:5432environment:POSTGRES_PASSWORD:passwordPOSTGRES_USER:usernamePOSTGRES_DB:database_namevolumes:-${HOME}/postgres-data/:/var/lib/postgresql/datapgweb:container_name:pgwebrestart:alwaysimage:sosedoff/pgwebports:-8081:8081links:-database_postgres:database_postgresenvironment:-PGWEB_DATABASE_URL=postgres://username:password@database_postgres:5432/database_name?sslmode=disabledepends_on:-database_postgres
🛠 Explicando um pouco mais
database_postgres
Nada muito novo sob o sol. São só algumas variáveis pra inicializar o banco com o usuário corretamente.
Mas opulo do gato está emvolumes
:
Ali eu garanto que uma pasta será criada naHOME
do usuário, e nela ficarão os dados do banco.
👉 Assim, se por acaso você der umdocker-compose down
(oudocker compose down
, dependendo da versão), seus dadosnão serão perdidos.
Não é o ideal pra colocar em produção, mas quebra um galho e tanto em muitos casos! 😂
pgweb
(Dashboard)
Tem duas coisas legais aqui:
- AURL de conexão é passada via variável de ambiente, facilitando tudo.
- O
links
cria uma ligação entre os serviços — define um alias, permitindo que o containerpgweb
acesse o banco de dadosdatabase_postgres
pelo nomedatabase_postgres
.
Além disso, odepends_on
garante que o banco subaantes da dashboard, evitando erros de conexão.
🚀 Rodando tudo
Depois de rodar um belo:
docker-compose up
Você já pode acessar sua dashboard no navegador pela URL:
http://localhost:8081/
Lá você pode executar queries ou só visualizar os dados — tudo direto do navegador, sem instalar mais nada.
✌️ É isso!
Espero que esse script seja útil pra alguém.
Qualquer dúvida, os comentários estão aí pra isso 🤙
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse