Ошибка аутентификации с использованием phpmyadmin и docker-compose - PullRequest
0 голосов
/ 08 мая 2019

Я пытаюсь использовать docker-compose для mysql и phpmyadmin, но получаю ошибку аутентификации при попытке войти в phpmyadmin.Я ищу помощь по этому вопросу, и как создать правильный файл docker_compose.yml.

Я пробовал суровые конфигурации в файле yml, но безуспешно.

Этоyml im using:

version: '3'

services:

  db:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_DATABASE: mydb
      MYSQL_USER: root
      MYSQL_PASSWORD: admin
      MYSQL_ROOT_PASSWORD: admin
    volumes:
      - my-db:/var/lib/mysql

  phpmyadmin:
          image: phpmyadmin/phpmyadmin:latest
          links:
            - db
          ports:
            - 8080:80
          restart: always
          environment:
              PMA_USER: root
              PMA_PASSWORD: admin

volumes:
  my-db: {}

Когда я пытаюсь войти в систему phpmyadmin, я получаю следующие ошибки:

  • mysqli_real_connect (): сервер запросил метод аутентификации, неизвестныйclient [caching_sha2_password]
  • mysqli_real_connect (): (HY000 / 2054): сервер запросил метод аутентификации, неизвестный клиенту

Я пыталсяизмените yml на:

version: '3'

services:

  db:
    image: mysql:57
    restart: always
    environment:

Но контейнер не поднимется, и он выдаст следующее сообщение:

  • docker_db_1 завершен с кодом 1

Есть ли у кого-нибудь такие же проблемы?

Спасибо всем.

Ответы [ 2 ]

1 голос
/ 08 мая 2019

Это прекрасно работает:

version: '3'

services:

  db:
    image: mysql:5.7
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_DATABASE: mydb
      MYSQL_USER: root
      MYSQL_PASSWORD: admin
      MYSQL_ROOT_PASSWORD: admin
    volumes:
      - my-db:/var/lib/mysql

  phpmyadmin:
          image: phpmyadmin/phpmyadmin:latest
          links:
            - db
          ports:
            - 8080:80
          restart: always
          environment:
              PMA_USER: root
              PMA_PASSWORD: admin

volumes:
  my-db: {}

Не забудьте удалить том перед запуском (в случае возникновения проблем).

0 голосов
/ 08 мая 2019

Я только что скопировал этот код в docker-compose.yml

version: '3'

services:

  db:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_DATABASE: mydb
      MYSQL_USER: root
      MYSQL_PASSWORD: admin
      MYSQL_ROOT_PASSWORD: admin
    volumes:
      - my-db:/var/lib/mysql

  phpmyadmin:
          image: phpmyadmin/phpmyadmin:latest
          links:
            - db
          ports:
            - 8080:80
          restart: always
          environment:
              PMA_USER: root
              PMA_PASSWORD: admin

volumes:
  my-db: {}

и выполнил команду docker stack deploy -c docker-compose.yml mysqllab

Это результат

введите описание изображения здесь

...