Docker Compose tilføjer faktisk værtsnavnene på alle dine linkede containere til hinanden.
På din maskine kører postgres-databasen faktisk i localhost, derfor har du localhost værtsnavn.
I Compose kører det i postgres-beholderen med værtsnavnet postgres , det er derfor du har postgres værtsnavn.
Hvis du vil, kan du oprette en post i din værtsfil for at omdirigere postgres til localhost , så skal du bare bruge postgres overalt.