Como expor o posgres no docker no aws para outros aplicativos?

0

Eu tenho uma instância do docker como esta

docker run --name my-db-name -e POSTGRES_PASSWORD=mysecretpassword -d postgres:latest

executando em um servidor

E eu tenho meu aplicativo golang envolvido pelo docker executando no mesmo servidor

func main() {
    db, _ := sql.Open("postgres", "postgres://postgres:@192.168.99.100:5432/postgres?sslmode=disable")

    http.HandleFunc("/test", handler)
    http.ListenAndServe(":8080", nil)
}

O acima está funcionando no meu local por não está funcionando no aws porque o ip não está correto.

Como estou usando o mac, preciso usar o docker machine ip para conectar-se ao docker postgres db, mas em aws eu não

Qual é uma boa maneira de configurar isso?

user3591466
fonte

Respostas:

0

Você precisa mapear a porta da sua janela de encaixe para a porta do seu host. Então você deve adicionar o seguinte:

-p 5432:5432

Seu comando deve ficar assim:

docker run --name my-db-name -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres

Algeriassic
fonte