Не могу подключиться к postgres (аутентификация по паролю не удалась для пользователя - докер) - PullRequest
0 голосов
/ 24 октября 2018

Я пытался запустить docker compose для настройки nginx, golang server и postgresql.Проблема в том, что я не могу подключиться к базе данных:

enter image description here

Изначально я пытался подключиться к postgres с помощью этой инструкции:

db, err = gorm.Open("postgres", "host=db port=5432 user=sigbrian password=example sslmode=disable")

С помощью этого файла docker-compose:

version: '3.2'

# volumes:
  # database_data:
    # driver: local

services:
  db:
    image: postgres
    restart: always
    environment:
      - POSTGRES_DB:sigdb
      - POSTGRES_USER:sigbrian
      - POSTGRES_PASSWORD:example
    ports:
      - '5432:5432'
    # volumes:
      # - database_data:/var/lib/postgresql/data
  golang-app:
    build:
      context: .
      dockerfile: Dockerfile
    # command: ["./wait-for-it.sh", "db:5432"]
    # ports:
    #   - '80:8888'
    expose:
      - '8080'
    depends_on:
      - "db"
    links:
      - "db"
  nginx-proxy-and-webserver:
    image: nginx:1.15.5-alpine
    ports:
      - '80:80'
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./static:/var/www/sig/static
    depends_on:
      - "golang-app"
    links:
      - "golang-app"

Но когда я комментирую переменные окружения пользователя, базы данных и пароля postgres из файла, и пытаюсь установить соединение следующим образом:

db, err = gorm.Open("postgres", "host=db port=5432 user=postgres sslmode=disable")

Все равно выдает ту же ошибку.Я ценю любую помощь.

1 Ответ

0 голосов
/ 24 октября 2018

Я использую docker compose с postgres и golang, как вы, вот файл docker-compose.yml, который я использую

version: '2'
services:
  redis:
    image: redis:latest
    command: --appendonly yes

  postgres:
    image: postgres:latest
    environment:
      - POSTGRES_USER=amine
      - POSTGRES_PASSWORD=amine
      - POSTGRES_DB=0000

  app:
    image: ahilaly/amine.in:v0.1.3
    command: -wait
    ports:
      - 7000:7000

    depends_on:
      - postgres
      - redis

    links:
      - postgres:postgres
      - redis:redis
...