Подключиться к пользовательской сети в Docker - PullRequest
0 голосов
/ 23 марта 2020

Я думаю, что этот вопрос задавали кучу, но не могу найти краткого ответа ...

У меня есть следующее Docker Составить:

version: "3.7"
networks:
  foo-network:
    driver: bridge
services:
  foo-pg-db:
    image: postgres:9.6.2-alpine
    restart: always
    volumes:
      - ./bootstrap/pg:/docker-entrypoint-initdb.d/
    ports:
      - 5432:5432
    environment:
      POSTGRES_USER: admin
    networks:
      - foo-network

Это запускается, и я могу подключиться к нему из своего приложения со следующим URL-адресом: "postgres: // admin@foo-pg-db/foo", но если я пытаюсь подключиться к этому с моего Ma c, что является частью хоста URL-адреса соединения? Это не localhost, не так ли?

1 Ответ

0 голосов
/ 23 марта 2020

Для меня подобное произошло с MySQL контейнером, что "localhost" не был определен как действительный адрес для docker адреса контейнера и с использованием "127.0.0.1" сработало.

127.0.0.1 является адресом по умолчанию в linux системах, проверьте файл hosts на точный адрес, используемый вашей ОС

Кроме того, ваша сеть не имеет к этому никакого отношения, поскольку вы напрямую используете Переменная ports: -

ports:
  - 5432:5432

Это фактически связывает порт вашего контейнера с почтой хоста.

<host_port> : <container_port>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...