и заранее благодарю за ваше драгоценное время.
Я провел весь день, выясняя, что не так с моей конфигурацией. Для всего, что я мог собрать, вот проблема, с которой я сталкиваюсь.
Я работаю на MacOS Catalina 10.15.4, 2,6 ГГц 6-ядерный Intel Core i7.
Я использовал для запуска команды docker image build -t myContainer .
, чтобы построить мой контейнер, а затем docker run -p 5000:5000 myContainer
, чтобы запустить мой контейнер. Раньше он работал без сбоев, пока я не открыл рабочий стол Docker и не удалил оттуда свои контейнеры. Я подозреваю, что в тот момент, когда я это сделал, я смог выполнить команду docker run
, за которой последовала следующая ошибка:
Error: Could not find certificate cert.pem
Хотя я смог успешно построить мои контейнеры.
Я предпринял следующие шаги, чтобы попытаться решить эту проблему, но не сработал. Это может быть полезно для более ясного понимания проблемы.
Я попытался восстановить сертификаты для моей машины по умолчанию, используя docker-machine regenerate-certs default
, за которым следует eval $(docker-machine env default)
. Хотя он и регенерировал мои сертификаты, но все равно не смог устранить ошибку при выполнении команды docker run -p 5000:5000 myContainer
.
Я перезапустил мою docker машину, используя docker-machine restart default
, но это не помогло
Я удалил машину по умолчанию, используя docker-machine rm default
и затем снова создал машину по умолчанию, используя `docker -machine create -d virtualbox default '
Я удалил и очистил docker из своей системы, используя brew cask uninstall docker
, а затем загрузил docker .dmg с сайта. Я перезапустил свой ноутбук и снова начал собирать контейнер. сборка прошла успешно, как обычно, но она все равно выбросила Error: Could not find certificate cert.pem
я сделал s sh в значение по умолчанию docker машина создала символическую ссылку для cert.pem с /User/manjot/.docker/machone/machines/default/cert.pem
до /var/lib/boot2docker/cert.pem
учитывая, что docker в этой папке отсутствует cert.pem. Но все же это не решило проблему.
Я также попытался очистить переменные DOCKER _ * из моей среды и сбросить их в соответствии с контейнером по умолчанию, используя eval $(docker-machine env default)
.
Я также перезаписываю сертификаты, добавляя следующее к демону. json
{
"insecure-registries" : ["myregistrydomain.com:5000"]
}
Я не мог понять, что Где docker пытается найти путь к cert.pem?
Я также пытался запускать эти команды как sudo. Я также удалил контейнеры и машину по умолчанию docker от пользователя manjotsingh
и создал docker, используя root. Но все равно это не сработало