O Docker Compose realmente adiciona os nomes de host de todos os seus contêineres vinculados uns aos outros.
Em sua máquina, o banco de dados postgres está realmente rodando em localhost, por isso você tem o
localhost nome de anfitrião. No Compose, ele está sendo executado no contêiner postgres, com o nome do host
postgres , é por isso que você tem o postgres nome de anfitrião. Se desejar, você pode criar uma entrada em seu arquivo host para redirecionar
postgres para localhost , você terá que usar postgres em toda parte.