Docker: ошибка: не удалось найти сертификат cert.pem? - PullRequest
1 голос
/ 09 апреля 2020

и заранее благодарю за ваше драгоценное время.

Я провел весь день, выясняя, что не так с моей конфигурацией. Для всего, что я мог собрать, вот проблема, с которой я сталкиваюсь.

Я работаю на 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

Хотя я смог успешно построить мои контейнеры.

Я предпринял следующие шаги, чтобы попытаться решить эту проблему, но не сработал. Это может быть полезно для более ясного понимания проблемы.

  1. Я попытался восстановить сертификаты для моей машины по умолчанию, используя docker-machine regenerate-certs default, за которым следует eval $(docker-machine env default). Хотя он и регенерировал мои сертификаты, но все равно не смог устранить ошибку при выполнении команды docker run -p 5000:5000 myContainer.

  2. Я перезапустил мою docker машину, используя docker-machine restart default, но это не помогло

  3. Я удалил машину по умолчанию, используя docker-machine rm default и затем снова создал машину по умолчанию, используя `docker -machine create -d virtualbox default '

  4. Я удалил и очистил docker из своей системы, используя brew cask uninstall docker, а затем загрузил docker .dmg с сайта. Я перезапустил свой ноутбук и снова начал собирать контейнер. сборка прошла успешно, как обычно, но она все равно выбросила Error: Could not find certificate cert.pem

  5. я сделал s sh в значение по умолчанию docker машина создала символическую ссылку для cert.pem с /User/manjot/.docker/machone/machines/default/cert.pem до /var/lib/boot2docker/cert.pem учитывая, что docker в этой папке отсутствует cert.pem. Но все же это не решило проблему.

  6. Я также попытался очистить переменные DOCKER _ * из моей среды и сбросить их в соответствии с контейнером по умолчанию, используя eval $(docker-machine env default). enter image description here

  7. Я также перезаписываю сертификаты, добавляя следующее к демону. json

{
  "insecure-registries" : ["myregistrydomain.com:5000"]
}

Я не мог понять, что Где docker пытается найти путь к cert.pem?

Я также пытался запускать эти команды как sudo. Я также удалил контейнеры и машину по умолчанию docker от пользователя manjotsingh и создал docker, используя root. Но все равно это не сработало

...