Итак, я пытаюсь запустить безсерверный одноуровневый контейнер из основного компонента. У меня есть том, связанный с /var/run/docker.sock на /var/run/docker.sock
$ docker inspect -f '{{ .Mounts }}' webapp
Вывод: [{bind /var/run/docker.sock /var/run/docker.sock true rprivate}]
И в моем dockerfile (FROM ubuntu:bionic
) я установил docker с тем же битом кода, который я использовал для установки docker на моей локальной машине (также ubuntu bioni c).
RUN apt -y install apt-transport-https ca-certificates curl software-properties-common && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && \
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \
apt-get -y install docker.ce && \
getent group docker || sudo groupadd docker
Обычные docker команды работают нормально.
Однако serverless invoke local --docker -f function --data '{MY_DATA}'
не работает, и я получил ответ:
'Пожалуйста, запустите демон Docker для используйте локальную Docker интеграцию invoke. '