Я получаю ошибку при попытке запустить docker-compose для настройки проекта django и базы данных mysql, на Ubuntu 22.04

Я новичок в docker и все еще изучаю его, поэтому я кодировал по этому учебнику youtube, но когда я пытаюсь запустить файл docker compose, я получаю эти ошибки на моей машине, которые я не могу понять.

Вот содержимое docker-compose.yml:

version: "3.8"
services:
  app:
    build: .
    volumes:
      - .:/django
    ports:
      - 8000:8000
    image: app:django
    container_name: django_container
    command: python manage.py runserver 0.0.0.0:8000
    depends_on:
      - db 
  db:
    image: mysql:5.7
    environment:
      MYSQL_DATABASE: 'django-app-db'
      MYSQL_ALLOW_EMPTY_PASSWORD: 'true'
    volumes:
      - ./data/mysql/db:/var/lib/mysql

Dockerfile:

FROM python:3.8-slim-buster

ENV PYTHONUNBUFFERED=1

WORKDIR /app

COPY requirements.txt requirements.txt

RUN pip3 install -r requirements.txt 
Файл

Requirements.txt:

asgiref==3.5.2
Django==4.1.3
pytz==2022.6
sqlparse==0.4.3
psycopg2-binary>=2.9
mysqlclient>=2.1

Теперь, когда я запускаю docker-compose build или следующий коммнад docker-compose run --rm app django-admin startproject core ., я получаю эти ошибки:

  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [16 lines of output]
      mysql_config --version
      /bin/sh: 1: mysql_config: not found
      mariadb_config --version
      /bin/sh: 1: mariadb_config: not found
      mysql_config --libs
      /bin/sh: 1: mysql_config: not found
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-lbql0nv5/mysqlclient_b1015c8235e44329ba5248fc9f64b86b/setup.py", line 15, in <module>
          metadata, options = get_config()
        File "/tmp/pip-install-lbql0nv5/mysqlclient_b1015c8235e44329ba5248fc9f64b86b/setup_posix.py", line 70, in get_config
          libs = mysql_config("libs")
        File "/tmp/pip-install-lbql0nv5/mysqlclient_b1015c8235e44329ba5248fc9f64b86b/setup_posix.py", line 31, in mysql_config
          raise OSError("{} not found".format(_mysql_config_path))
      OSError: mysql_config not found
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
WARNING: You are using pip version 22.0.4; however, version 22.3.1 is available.
You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command.
ERROR: Service 'app' failed to build : The command '/bin/sh -c pip3 install -r requirements.txt' returned a non-zero code: 1

Другая вещь - у меня уже есть последняя версия pip 22.3.1, но я все еще получаю предупреждение, что у меня нет последней версии. Кто-нибудь помогите

Я обновил pip и pip subtools, но все равно это не решило проблему

Вернуться на верх