ДО РЕДАКТИРОВАНИЯ ОП:
проблема:
./entrypoint.sh: line 2: docker: command not found
Вы пытаетесь запустить docker внутри docker.
Возможные решения
1) Mount host's docker sock
или
2) Install docker inside docker before you run your
-> apt install docker.io
--> expect super size of your image
точка входа
Разница между 1) и 2)
in 1) ваш docker docker является хостом docker
в то время как в 2) установлен docker в docker является независимым и, следовательно, изолирован от хоста
ПОСЛЕ РЕДАКТИРОВАНИЯ
проблема:
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (99)
РЕДАКТИРОВАТЬ: И так как вы редактируете свой вопрос, который теперь не соответствует вашему названию, я предоставлю вам вторую проблему
Вы не можете подключиться к своему локальному хосту, потому что инсайдер docker, localhost - docker сам, а не ваш хост.
Это можно решить с помощью сетевого драйвера хоста.
Или, предпочтительно, тоже поместите свою базу данных в docker, в той же сети docker, выставьте порт, назовите свой контейнер базы данных как mysql_database и подключитесь к нему как mysql_database: порт
- Или не пытайтесь подключиться к БД, которая находится в вашем контейнере изнутри вашего контейнера. Вот и я думаю, что антипаттерн. Обычно должно быть возможно войти в CLI базы данных, где вы можете запускать команды