¿Cómo conectar el contenedor de la aplicación web Docker al contenedor Docker PostgreSQL?
Estoy practicando la creación de una aplicación web Golang que interactúa con una base de datos PostgreSQL, cada una se ejecuta en su propio contenedor.
Estoy corriendo los contenedores condocker-compose up
Pero parece que no estoy logrando configurar correctamente el contenedor de postgres.
Por brevedad, enlaces aDockerfile
sy otros archivos de configuración sonen esta esencia (avísame si lo quieres aquí).
version: '2'
services:
web_app:
build: dockerfiles/web_app
ports:
- "9000:9000"
volumes:
- .:/go/src/gitlab.com/repo/web_app
# links might be replaced by depends_on.
# links:
# - db
depends_on:
- db
# tty and stdin_open cause docker-compose to disconnect from docker-machine after 60sec.
# A fix is on the way.
# tty: true
# stdin_open: true
db:
build: dockerfiles/db
volumes:
- data:/var/lib/postgresql/data
volumes:
data: {}
docker-compose up
funciona bien. Pero cuando la aplicación intenta abrir una conexión de base de datos con:
var pgConf string = "user=web_app dbname=web_app sslmode=verify-full password=password"
db, err := sql.Open("postgres", pgConf)
Recibo el siguiente error de Docker compose:
Error creating new user: dial tcp [::1]:5432: getsockopt: connection refused
¿Qué puedo hacer para que ambos contenedores se comuniquen entre sí?
Gracias de antemano.