В настоящее время я запускаю docker-compose с изображением python & Mysql. Когда я пытаюсь сделать резервную копию своей базы данных с помощью команды mysqldump в python (подпроцесс), я получаю следующую ошибку:
sh: mysqldump: команда не найдена
FROM python:3-onbuild
EXPOSE 5000
WORKDIR /app
COPY requirements.txt /app
ADD init.sql /docker-entrypoint-initdb.d
RUN pip install -r requirements.txt
COPY app.py /app
CMD python app.py
version: "2"
services:
sql-service:
image: mysql:latest
container_name: mysql-2
ports:
- "51156:3306"
environment:
MYSQL_ROOT_PASSWORD: root
volumes:
- ./db:/docker-entrypoint-initdb.d/:ro
python-service:
image: python:3-onbuild
container_name: python-2
build: ./scripts/
links:
- sql-service
ports:
- "51459:5000"
f = open('backup.sql', 'wb')
p1 = subprocess.Popen(['mysqldump', '-u', 'root', '-p','root', '--add-drop-database', '--databases', 'knights'], stdout=PIPE)
P2 = subprocess.Popen('gzip', stdin=p1.stdout, stdout=f)
p2.communicate()