Рейтинг:0

Не удается получить доступ к mysql в новой установке docker/docksal/d9

флаг cl

У меня была установка D9, работающая в MacPorts. Я установил Docker и Docksal, скопировал проект D9 в папку проекта Docksal и удалил MacPorts.

Доксал запускается так:

Запуск службы...
Создание сети "myproject_default" с драйвером по умолчанию
Запуск myproject_db_1... готово
Запускаем myproject_cli_1... готово
Запускаем myproject_web_1... готово
Подключил vhost-прокси к сети "myproject_default".

докер PS дает:

ИДЕНТИФИКАТОР КОНТЕЙНЕРА ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНА СТАТУС ИМЕНА ПОРТОВ
13ef8d52170d doksal/ssh-agent:1.3 "docker-entrypoint.s ¦" 11 минут назад Up 11 минут (исправен) doksal-ssh-agent
f68c8343b0fe doksal/dns:1.1 "docker-entrypoint.s ¦" 11 минут назад Up 11 минут (работает) 0.0.0.0:53->53/udp doksal-dns
94854d2add70 doksal/vhost-proxy:1.7 "docker-entrypoint.s¦" 11 минут назад Up 11 минут (исправен) 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp doksal-vhost -прокси
17b4ab7d12dc dockersal/mysql:5.7-1.5 "docker-entrypoint.s¦" 17 минут назад Up 10 минут (исправен) 33060/tcp, 0.0.0.0:55001->3306/tcp, :::55001->3306/tcp мой проект_db_1
a70ffb3c287a doksal/apache:2.4-2.3 "httpd-foreground" 34 минуты назад Up 10 минут (исправен) 80/tcp, 443/tcp myproject_web_1
7e331d850e06 doksal/cli:php7.4-3.0 "/opt/startup.sh sup ¦" 34 минуты назад Up 10 минут (работает) 22/tcp, 3000/tcp, 9000/tcp myproject_cli_1'

но fin drush cr дает:

    В Connection.php строка 174:
                                                        
      SQLSTATE[HY000] [2002] Нет такого файла или каталога  
                                                    
и fin drush sqlc дает:

ОШИБКА 2002 (HY000): невозможно подключиться к локальному серверу MySQL через сокет '/var/run/mysqld/mysqld.sock' (2)

В строке Process.php 256:
                                                                                                     
  Команда "mysql --defaults-file=/tmp/drush_RPHXDD --database=myproj --host=localhost --port=33  
  06-А" не удалось.                                                                                     
                                                                                                     
  Код выхода: 1 (общая ошибка)                                                                        
                                                                                                     
  Рабочий каталог: /var/www/docroot                                                                
                                                                                                     
  Вывод:                                                                                            
  ================                                                                                   
                                                                                                     
                                                                                                     
  Вывод ошибки:                                                                                      
  ================                                                                                   
                                    

состояние плавникового броска:

 Друпал версия: 9.1.2                                 
 URI сайта: http://myproject.docksal            
 Драйвер БД: mysql                                 
 Имя хоста БД: localhost                             
 Порт БД: 3306                                  
 Имя пользователя БД: root                                  
 Имя БД: myproj                                
 Двоичный файл PHP: /usr/local/bin/php                    
 Конфигурация PHP:                                       
 ОС PHP: Linux                                 
 Скрипт драша: /usr/local/bin/drush                  
 Драш версия: 10.5.0                                
 Температура драша: /tmp                                  
 Конфигурации драша: /var/www/vendor/drush/drush/drush.yml 
 Корень Drupal: /var/www/docroot                      
 Путь к сайту: сайты/по умолчанию              

докер логирует БД:

db_1 | Версия: '5.7.30', сокет: '/var/run/mysqld/mysqld.sock', порт: 3306 MySQL Community Server (GPL)
db_1 | 2021-08-08T05:01:53.500160Z 0 [Примечание] Предоставление 0 клиентским потокам шанса изящно умереть
db_1 | 2021-08-08T05:01:53.500184Z 0 [Примечание] Завершение подчиненных потоков
db_1 | 2021-08-08T05:01:53.500188Z 0 [Примечание] Принудительное отключение 0 оставшихся клиентов
db_1 | 2021-08-08T05:01:53.500192Z 0 [Примечание] Планировщик событий: очистка очереди. 0 событий
db_1 | 2021-08-08T05:01:53.500260Z 0 [Примечание] Конец бинлога
db_1 | 2021-08-08T05:01:53.500640Z 0 [Примечание] Выключение плагина ngram
db_1 | 2021-08-08T05:01:53.500647Z 0 [Примечание] Выключение плагина «раздел»
db_1 | 2021-08-08T05:01:53.500649Z 0 [Примечание] Выключение плагина «ЧЕРНАЯ ДЫРА»
db_1 | 2021-08-08T05:01:53.500652Z 0 [Примечание] Выключение плагина «АРХИВ»
db_1 | 2021-08-08T05:01:53.500654Z 0 [Примечание] Завершение работы надстройки "PERFORMANCE_SCHEMA"
db_1 | 2021-08-08T05:01:53.500677Z 0 [Примечание] Выключение плагина MRG_MYISAM
db_1 | 2021-08-08T05:01:53.500679Z 0 [Примечание] Выключение плагина MyISAM
db_1 | 2021-08-08T05:01:53.500686Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_VIRTUAL»
db_1 | 2021-08-08T05:01:53.500689Z 0 [Примечание] Выключение подключаемого модуля «INNODB_SYS_DATAFILES»
db_1 | 2021-08-08T05:01:53.500691Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_TABLESPACES»
db_1 | 2021-08-08T05:01:53.500692Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_FOREIGN_COLS»
db_1 | 2021-08-08T05:01:53.500694Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_FOREIGN»
db_1 | 2021-08-08T05:01:53.500695Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_FIELDS»
db_1 | 2021-08-08T05:01:53.500697Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_COLUMNS»
db_1 | 2021-08-08T05:01:53.500698Z 0 [Примечание] Выключение подключаемого модуля «INNODB_SYS_INDEXES»
db_1 | 2021-08-08T05:01:53.500700Z 0 [Примечание] Выключение плагина INNODB_SYS_TABLESTATS
db_1 | 2021-08-08T05:01:53.500701Z 0 [Примечание] Завершение работы надстройки «INNODB_SYS_TABLES»
db_1 | 2021-08-08T05:01:53.500703Z 0 [Примечание] Завершение работы надстройки «INNODB_FT_INDEX_TABLE»
db_1 | 2021-08-08T05:01:53.500704Z 0 [Примечание] Завершение работы надстройки «INNODB_FT_INDEX_CACHE»
db_1 | 2021-08-08T05:01:53.500706Z 0 [Примечание] Завершение работы надстройки «INNODB_FT_CONFIG»
db_1 | 2021-08-08T05:01:53.500707Z 0 [Примечание] Выключение плагина INNODB_FT_BEING_DELETED
db_1 | 2021-08-08T05:01:53.500709Z 0 [Примечание] Выключение плагина INNODB_FT_DELETED
db_1 | 2021-08-08T05:01:53.500710Z 0 [Примечание] Завершение работы надстройки «INNODB_FT_DEFAULT_STOPWORD»
db_1 | 2021-08-08T05:01:53.500712Z 0 [Примечание] Выключение плагина INNODB_METRICS
db_1 | 2021-08-08T05:01:53.500713Z 0 [Примечание] Выключение плагина INNODB_TEMP_TABLE_INFO
db_1 | 2021-08-08T05:01:53.500714Z 0 [Примечание] Выключение плагина «INNODB_BUFFER_POOL_STATS»
db_1 | 2021-08-08T05:01:53.500716Z 0 [Примечание] Завершение работы надстройки «INNODB_BUFFER_PAGE_LRU»
db_1 | 2021-08-08T05:01:53.500717Z 0 [Примечание] Завершение работы надстройки «INNODB_BUFFER_PAGE»
db_1 | 2021-08-08T05:01:53.500719Z 0 [Примечание] Завершение работы надстройки «INNODB_CMP_PER_INDEX_RESET»
db_1 | 2021-08-08T05:01:53.500720Z 0 [Примечание] Завершение работы надстройки «INNODB_CMP_PER_INDEX»
db_1 | 2021-08-08T05:01:53.500722Z 0 [Примечание] Выключение подключаемого модуля «INNODB_CMPMEM_RESET»
db_1 | 2021-08-08T05:01:53.500723Z 0 [Примечание] Завершение работы надстройки «INNODB_CMPMEM»
db_1 | 2021-08-08T05:01:53.500725Z 0 [Примечание] Выключение подключаемого модуля «INNODB_CMP_RESET»
db_1 | 2021-08-08T05:01:53.500726Z 0 [Примечание] Завершение работы надстройки «INNODB_CMP»
db_1 | 2021-08-08T05:01:53.500728Z 0 [Примечание] Выключение плагина INNODB_LOCK_WAITS
db_1 | 2021-08-08T05:01:53.500729Z 0 [Примечание] Выключение плагина INNODB_LOCKS
db_1 | 2021-08-08T05:01:53.500730Z 0 [Примечание] Выключение плагина INNODB_TRX
db_1 | 2021-08-08T05:01:53.500732Z 0 [Примечание] Выключение плагина InnoDB
db_1 | 2021-08-08T05:01:53.500829Z 0 [Примечание] InnoDB: FTS оптимизирует выход из потока.
db_1 | 2021-08-08T05:01:53.500933Z 0 [Примечание] InnoDB: запуск выключения...
db_1 | 2021-08-08T05:01:53.601593Z 0 [Примечание] InnoDB: дамп буферных пулов в /var/lib/mysql/ib_buffer_pool
db_1 | 2021-08-08T05:01:53.602156Z 0 [Примечание] InnoDB: дамп пула буферов завершен в 210808 5:01:53
db_1 | 2021-08-08T05:01:55.139112Z 0 [Примечание] InnoDB: отключение завершено; порядковый номер журнала 12488783
db_1 | 2021-08-08T05:01:55.147075Z 0 [Примечание] InnoDB: удален файл данных временного табличного пространства: «ibtmp1»
db_1 | 2021-08-08T05:01:55.147420Z 0 [Примечание] Выключение плагина «ПАМЯТЬ»
db_1 | 2021-08-08T05:01:55.147516Z 0 [Примечание] Выключение плагина CSV
db_1 | 2021-08-08T05:01:55.147588Z 0 [Примечание] Отключение плагина sha256_password
db_1 | 2021-08-08T05:01:55.147917Z 0 [Примечание] Выключение плагина mysql_native_password
db_1 | 2021-08-08T05:01:55.148232Z 0 [Примечание] Выключение плагина 'binlog'
db_1 | 2021-08-08T05:01:55.155374Z 0 [Примечание] mysqld: отключение завершено
db_1 | 
db_1 | 08.08.2021 05:02:03+00:00 [Примечание] [Точка входа]: сценарий точки входа для MySQL Server 5.7.30-1debian10 запущен.
db_1 | 2021-08-08 05:02:04+00:00 [Примечание] [точка входа]: переключение на выделенного пользователя «mysql»
db_1 | Запуск сценариев инициализации в /docker-entrypoint.d/ от имени пользователя root...
db_1 | Включая пользовательскую конфигурацию из /var/www/.docksal/etc/mysql/my.cnf
db_1 | 08.08.2021 05:02:04+00:00 [Примечание] [Точка входа]: сценарий точки входа для MySQL Server 5.7.30-1debian10 запущен.
db_1 | 2021-08-08T05:02:04.376939Z 0 [Предупреждение] TIMESTAMP с неявным значением DEFAULT устарело. Пожалуйста, используйте опцию сервера --explicit_defaults_for_timestamp (подробности см. в документации).
db_1 | 2021-08-08T05:02:04.381332Z 0 [Примечание] mysqld (mysqld 5.7.30) запускается как процесс 1 ...
db_1 | 2021-08-08T05:02:04.384729Z 0 [Примечание] InnoDB: доступна поддержка PUNCH HOLE
db_1 | 2021-08-08T05:02:04.384742Z 0 [Примечание] InnoDB: мьютексы и rw_locks используют атомарные встроенные функции GCC
db_1 | 2021-08-08T05:02:04.384744Z 0 [Примечание] InnoDB: использует мьютексы событий
db_1 | 2021-08-08T05:02:04.384747Z 0 [Примечание] InnoDB: встроенная функция GCC __atomic_thread_fence() используется для барьера памяти
db_1 | 2021-08-08T05:02:04.384749Z 0 [Примечание] InnoDB: сжатые таблицы используют zlib 1.2.11
db_1 | 2021-08-08T05:02:04.384751Z 0 [Примечание] InnoDB: использование родного AIO для Linux
db_1 | 2021-08-08T05:02:04.385017Z 0 [Примечание] InnoDB: Количество пулов: 1
db_1 | 2021-08-08T05:02:04.385113Z 0 [Примечание] InnoDB: использование инструкций CPU crc32
db_1 | 2021-08-08T05:02:04.386353Z 0 [Примечание] InnoDB: Инициализация пула буферов, общий размер = 256 МБ, количество экземпляров = 1, размер фрагмента = 128 МБ
db_1 | 2021-08-08T05:02:04.490032Z 0 [Примечание] InnoDB: завершена инициализация пула буферов
db_1 | 2021-08-08T05:02:04.507421Z 0 [Примечание] InnoDB: если пользователь выполнения mysqld авторизован, приоритет потока очистки страниц можно изменить. См. справочную страницу setpriority().
db_1 | 2021-08-08T05:02:04.533356Z 0 [Примечание] InnoDB: самый высокий поддерживаемый формат файла — Barracuda.
db_1 | 2021-08-08T05:02:04.618195Z 0 [Примечание] InnoDB: создание общего табличного пространства для временных таблиц
db_1 | 2021-08-08T05:02:04.618496Z 0 [Примечание] InnoDB: установка размера файла './ibtmp1' равным 12 МБ. Физически запись файла в полном объеме; Пожалуйста, подождите ...
db_1 | 2021-08-08T05:02:04.751813Z 0 [Примечание] InnoDB: размер файла './ibtmp1' теперь составляет 12 МБ.
db_1 | 2021-08-08T05:02:04.777613Z 0 [Примечание] InnoDB: найдено 96 сегментов повторного отката. Активно 96 сегментов повторного отката.
db_1 | 2021-08-08T05:02:04.777675Z 0 [Примечание] InnoDB: активны 32 сегмента отката без повторного выполнения.
db_1 | 2021-08-08T05:02:04.810394Z 0 [Примечание] InnoDB: запущена версия 5.7.30; порядковый номер журнала 12488783
db_1 | 2021-08-08T05:02:04.832602Z 0 [Примечание] Плагин FEDERATED отключен.
db_1 | 2021-08-08T05:02:04.834210Z 0 [Примечание] InnoDB: загрузка пулов буферов из /var/lib/mysql/ib_buffer_pool
db_1 | 2021-08-08T05:02:04.898552Z 0 [Примечание] InnoDB: загрузка буферных пулов завершена в 210808 5:02:04
db_1 | 2021-08-08T05:02:04.914468Z 0 [Примечание] В каталоге данных обнаружены файлы ca.pem, server-cert.pem и server-key.pem. Попытка включить поддержку SSL с их помощью.
db_1 | 2021-08-08T05:02:04.915086Z 0 [Примечание] Генерация SSL-сертификатов пропускается, так как файлы сертификатов присутствуют в каталоге данных.
db_1 | 2021-08-08T05:02:04.925715Z 0 [Предупреждение] Сертификат ЦС ca.pem является самозаверяющим.
db_1 | 2021-08-08T05:02:04.926091Z 0 [Примечание] Генерация пары ключей RSA пропускается, так как файлы ключей присутствуют в каталоге данных.
db_1 | 2021-08-08T05:02:04.932524Z 0 [Примечание] Имя хоста сервера (адрес привязки): '*'; порт: 3306
db_1 | 2021-08-08T05:02:04.932753Z 0 [Примечание] IPv6 доступен.
db_1 | 2021-08-08T05:02:04.932880Z 0 [Примечание] - '::' разрешается в '::';
db_1 | 2021-08-08T05:02:04.933009Z 0 [Примечание] Сокет сервера создан на IP: '::'.
db_1 | 2021-08-08T05:02:04.950069Z 0 [Предупреждение] Небезопасная конфигурация для --pid-file: расположение '/var/run/mysqld' в пути доступно для всех пользователей ОС. Попробуйте выбрать другой каталог.
db_1 | 2021-08-08T05:02:05.120498Z 0 [Примечание] Планировщик событий: загружено 0 событий
db_1 | 2021-08-08T05:02:05.134073Z 0 [Примечание] mysqld: готов к соединениям.
db_1 | Версия: '5.7.30', сокет: '/var/run/mysqld/mysqld.sock', порт: 3306 MySQL Community Server (GPL)

Это тот случай, если у меня есть localhost или 127.0.0.1 в settings.php. Кажется, служба mysql есть, и контейнер запускается, но ничего не может подключиться к службе.

флаг cn
Будет ли БД действительно находиться на локальном хосте для контейнерного решения? Разве это не противоречит цели?
флаг cl
Я предполагаю, что localhost относится к контейнеру, как и /var/www/html
флаг cn
Это разные машины, поэтому я не уверен, что это предположение будет верным. По общему признанию, я не использовал Docksal (Lando трудно превзойти по надежности и простоте использования), но я бы предположил, что они работают одинаково. Тем более, что оба создают сеть, чтобы контейнеры могли взаимодействовать друг с другом, что было бы ненужным, если бы они были доступны по одному и тому же имени хоста.
флаг cl
Вы правы. Я снова запустил установку с другим результатом, поскольку соединение работает. Поскольку вы отправили меня на этот курс, пожалуйста, возьмите свой первый комментарий и вставьте его в качестве ответа вместе с: Это должно быть «db» вместо «localhost».
Kevin avatar
флаг in
Для всего этого вам придется обратиться к документации Docker. Это основная функциональность Docker, не относящаяся к Drupal. Внутренняя сеть в Docker может видеть контейнеры по их имени.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.