Я пытаюсь использовать python Popen для достижения того, что выглядит так, используя командную строку.Подпроцесс подпроцесса Python для stdin
echo "hello" | docker exec -i $3 sh -c 'cat >/text.txt'
Цель состоит в том, чтобы трубе «привет» текст в команду docker exec
и написано в контейнер Докер.
Я пробовал это, но не могу заставить его работать.
import subprocess
from subprocess import Popen, PIPE, STDOUT
p = Popen(('docker', 'exec', '-i', 'nginx-ssl', 'sh', '-c', 'cat >/text.txt'), stdin=subprocess.PIPE)
p.stdin.write('Hello')
p.stdin.close()
Как это не работает? Производит ли он пустой файл? Нет файлов? Сообщение об ошибке? –
Нет файла. Однако ошибок нет. – user1513388
Что такое "докер"? У вас есть ссылка на его документацию? –