MacOS High Sierra
Python 3.6.3
Докер -c ompose.yml
version: '3'
services:
celery:
container_name: "cache_bot"
build:
context: .
dockerfile: docker/celery/Dockerfile
command: "celery -A cache_bot.app worker --loglevel=info"
volumes:
- ./src:/www
Dockerfile
FROM python:3.6-alpine
RUN apk --update add --no-cache bash gcc libc-dev unixodbc-dev python3-dev
ADD ./src /www
ADD ./requirements.txt /home
WORKDIR /www
RUN pip install -r /home/requirements.txt
requirements.txt
mysqlclient==1.3.12
...
Когда я запускаю команду "docker -c ompose build", я получаю ошибку:
Не удалось выполнить команду "python setup.py egg_info" с кодом ошибки 1 в /tmp/pip-install-jsegcbha/mysqlclient/
ERROR: Service 'celery' не удалось построить: команда '/bin/sh -c pip install -r/home/requirements.txt' возвратила ненулевой код: 1
Полная трассировка:
Сбор mysqlclient == 1.3.12 (из -r/home/requirements.txt (строка 8))
Загрузка https://files.pythonhosted.org/packages/6f/86/bad31f1c1bb0cc99e88ca2adb7cb5c71f7a6540c1bb001480513de76a931/mysqlclient-1.3.12.tar.gz (89kB)
Полный вывод команды python setup.py egg_info:
/bin/sh: mysql_config: не найден
Traceback (последний последний вызов):
Файл "/tmp/pip-install-jsegcbha/mysqlclient/setup.py", строка 17, в метаданных, options = get_config()
Файл "/tmp/pip-install-jsegcbha/mysqlclient/setup_posix.py", строка 44, в get_config libs = mysql_config ("libs_r")
Файл "/tmp/pip-install-jsegcbha/mysqlclient/setup_posix.py", строка 26, в mysql_config
raise EnvironmentError ("% s not found"% (mysql_config.path,))
OSError: mysql_config не найден
На самом деле mysql_config по пути /usr/local/bin, и этот путь устанавливается в $ PATH
Я пробовал - RUN pip install --upgrade setuptools - в моем Dockerfile. Это не помогло.
ENV PATH/usr/local/bin: $ PATH в файле Docker не помогло.
Большое спасибо!!!!!!!!!!!!!
У меня была такая же проблема, попробуйте это в командной строке
brew install mysql-connector-c
brew install mysql
brew unlink mysql-connector-c
sudo pip install pymysql
sudo pip install mysqlclient