Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Alpine python映像上的MySQL失败-加载共享库libmariadb时出错?_Python_Docker - Fatal编程技术网

Alpine python映像上的MySQL失败-加载共享库libmariadb时出错?

Alpine python映像上的MySQL失败-加载共享库libmariadb时出错?,python,docker,Python,Docker,我的Dockerfile: FROM python:3.8-alpine ... RUN apk add --no-cache --virtual .build-deps gcc libffi-dev openssl-dev musl-dev mariadb-dev \ && pip install --no-cache-dir -r /code/requirements/production.txt \ && apk del .build-d

我的Dockerfile:

FROM python:3.8-alpine

...

RUN apk add --no-cache --virtual .build-deps gcc libffi-dev openssl-dev musl-dev mariadb-dev \
    && pip install --no-cache-dir -r /code/requirements/production.txt \
    && apk del .build-deps gcc libffi-dev musl-dev openssl-dev mariadb-dev

...
要求:

django==2.2.9
mysqlclient==1.4.6
gunicorn==20.0.4
django-bootstrap3==12.0.3
django-fsm==2.7.0
djangorestframework==3.11.0
当我运行应用程序时,我从django获得以下信息:

ImportError: Error loading shared library libmariadb.so.3: No such file or directory (needed by /usr/local/lib/python3.8/site-packages/MySQLdb/_mysql.cpython-38-x86_64-linux-gnu.so)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.
Did you install mysqlclient?
我已经安装了,如何解决此问题?

我在

解决方案是在安装依赖项之前添加
mariadb-connector-c-dev

RUN apk add --no-cache mariadb-connector-c-dev
我发现这个问题

解决方案是在安装依赖项之前添加
mariadb-connector-c-dev

RUN apk add --no-cache mariadb-connector-c-dev

更好的方法是在连接MySQL时使用alpine以外的python工具。实际上,您可以使用
apk add--no cache mariadb-connector-c
更好的方法是在连接MySQL时使用alpine以外的python工具。实际上,您可以使用
apk add--no cache mariadb-connector-c