У вас есть опечатка в вашем файле.Псевдоним DNS автоматически настраивается для имени службы, и для вашего проекта также создается сеть докеров по умолчанию.Поэтому все, что нужно, - это подключиться к имени службы, которое в вашем случае было «postgre» вместо «postgres».Чтобы исправить это, попробуйте этот файл compose:
version: '3.6'
services:
postgres:
image: postgres:11.1-alpine
ports:
- '5432:5432'
environment:
POSTGRES_USER: 'user'
POSTGRES_PASSWORD: 'password'
POSTGRESS_DB: 'db_amex01'
volumes:
- ./init:/docker-entrypoint-initdb.d/
todo:
build: ./go_amex/
# ports:
# - "8000:8080"
Подробнее о создании файлов сети см.: https://docs.docker.com/compose/networking/
Обратите внимание, что следующая ошибка, которую вы, скорее всего, увидите, - отказ в соединении,Compose запустит оба контейнера одновременно, и ваше приложение, скорее всего, будет запущено до завершения запуска базы данных.Чтобы решить эту проблему, вам понадобится повторный цикл с небольшой задержкой между повторными попытками, а также тайм-аут или предел повторных попыток в коде приложения.