Het is 2018 en ik had net een soortgelijk probleem. De oplossing voor mij leek te zijn met de volgorde van rekwisieten tot docker. bijv. dit resulteerde erin dat er geen poort werd blootgesteld;
docker run -d --name posttest postgres:alpine -e POSTGRES_PASSWORD=fred -p 5432:5432
terwijl dit prima werkte (beeld-belichte poort 5432 zoals verwacht);
docker run --name posttest -d -p 5432:5432 -e POSTGRES_PASSWORD=fred postgres:alpine