Написать в контейнер stdin на execstart в docker-php api

У меня есть докер-контейнер, который я хочу написать его stdin после того, как я бегу execstart, Я запускаю приложение PHP, которое требует ввода. В документации по Docker объяснил, что это можно сделать с помощью WebSocket, как показано ниже, но он объясняет только stdout и stderr:

$docker = Docker::create();
$containerConfig = new ContainersCreatePostBody();
$containerConfig->setImage('py:test1');
// You need to attach stream of the container to docker
$containerConfig->setAttachStdin(true);
$containerConfig->setAttachStdout(true);
$containerConfig->setAttachStderr(true);
$containerConfig->setOpenStdin(true);
$containerConfig->setTty(true);
$ss= $docker->containerCreate($containerConfig);
$webSocketStream = $docker->containerAttachWebsocket($ss->getId(), [
    'stream' => true,
    'stdout' => true,
    'stderr' => true,
    'stdin'  => true,
]);
$docker->containerStart($ss->getId());
$line = $webSocketStream->read(10);

запустить этот код, и я получаю ошибку: Call to a member function write() on null

0 ответов

Другие вопросы по тегам