xarek1986
@xarek1986
Инженер

Почему mysql не подхватывает содержимое docker-entrypoint-initdb.d?

Приветсвую!
Собственно проблема, над которой уже второй день бьюсь (За что я и ненавижу mysql)
version: "2"
services:
  db:
    image: mysql:8
    container_name: tb
    privileged: true
    volumes:
      - ./mysql:/docker-entrypoint-initdb.d:rw
    environment:
      MYSQL_DATABASE: "tb"
      MYSQL_ROOT_PASSWORD: "root"
    ports:
      - "127.0.0.1:3306:3306"
    command: "--default_authentication_plugin=mysql_native_password"

в каталоге mysql лежит create.sql
create database if not exists `base1`;
create database if not exists `base2`;

Все волумы удалены (проверял не однократно), при этом если после инициализации контейнера зайти в него и выполнить этот sql вручную, то всё отработает. Подскажите, какую мелочь я упускаю из виду???
docker version 
Client:
 Version:      1.13.1
 API version:  1.26
 Go version:   go1.6.2
 Git commit:   092cba3
 Built:        Thu Nov  2 20:40:23 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.13.1
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.6.2
 Git commit:   092cba3
 Built:        Thu Nov  2 20:40:23 2017
 OS/Arch:      linux/amd64
 Experimental: false
  • Вопрос задан
  • 2093 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Vanookay
Нашёлся ответ?
Ответ написан
Комментировать
xarek1986
@xarek1986 Автор вопроса
Инженер
Vanookay Процесс читающий из каталога docker-entrypoint-initdb.d работает от пользователя mysql, и если на подключаемом каталоге (./mysql) стоят права не дающие чтения для остальных, то, логично, файлы не читаются. В логах при этом ничего нет, потому что для пользователя mysql этот каталог просто пуст.
В общем рецепт прост, перед тем как прокидывать каталог в контейнер, зделай на него chmod o+rX
Написано только что
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы