docker-compose: сервер запросил метод аутентификации, неизвестный клиенту - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть этот файл yml для настройки MySQL в Docker:

# Use root/example as user/password credentials
version: '3.1'

services:

  db:
    image: mysql
    restart: always
    environment:
       MYSQL_ROOT_PASSWORD: 'pass'
       MYSQL_DATABASE: 'db'
       MYSQL_USER: 'user'
       MYSQL_PASSWORD: 'pass'

  adminer:
    image: adminer
    restart: always
    ports:
      - 8888:8080

И я запускаю контейнер, используя следующую команду из той же директории, где находится yml:

docker-compose -f stack.yml up

Тогда я получил эту ошибку:

then i get following error while logging in

Ответы [ 2 ]

0 голосов
/ 02 декабря 2018

Если вы столкнулись с этой ошибкой, но все еще хотите использовать MySQL v.8. Вы можете сделать это, сказав MySQL Server использовать устаревший плагин аутентификации.

Итак, ваш составной файл будет выглядеть так:

# Use root/example as user/password credentials

version: '3.1'

services:

  db:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
       MYSQL_ROOT_PASSWORD: 'pass'
       MYSQL_DATABASE: 'db'
       MYSQL_USER: 'user'
       MYSQL_PASSWORD: 'pass'

  adminer:
    image: adminer
    restart: always
    ports:
      - 8888:8080
0 голосов
/ 04 мая 2018

Это сработало для меня:

image: mysql:5.7
...