我正在OSX El Capitain 10.11.4上全新安装Docker。当我尝试使用docker的任何命令时,我收到此错误。
Could not load X509 key pair: crypto/tls: private key does not match public key. Make sure the key is not encrypted
我可以运行docker-machine,但不能启动任何docker容器。
Docker版本(目前唯一正在运行的docker命令)
Brunos-iMac:~ brunoban$ docker -v
Docker version 1.10.3, build 20f81dd
Docker机器版本
Brunos-iMac:~ brunoban$ docker-machine -v
docker-machine version 0.6.0, build e27fb87
Docker machine ls
Brunos-iMac:~ brunoban$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.100:2376 v1.10.3
Docker machine env
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/brunoban/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval $(docker-machine env)
我尝试使用docker-machine regenerate-certs重新生成证书(即使使用--force标志),但似乎没有任何工作。任何人都可以发光吗?
由于
答案 0 :(得分:0)
警告::我的情况与原始问题不同,但错误消息相同。
当我尝试使用Portainer UI和合成文件添加新堆栈时,也会收到相同的错误消息。
我的方案配置如下:
我的docker-compose.yaml使用portainer / agent(它不能那样工作)
version: '2'
services:
portainer_agent:
image: portainer/agent
container_name: task.agent
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
ports:
- "9001:9001"
networks:
- agent_network
restart: always
# The portainer instance for managing Docker containers locally
# To run on localhost in standalone mode
# https://documentation.portainer.io/v2.0/deploy/linux/#docker-standalone
portainer:
image: portainer/portainer-ce
command: -H tcp://task.agent:9001 --tlsskipverify
volumes:
- portainer_data:/data
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
ports:
- "8000:8000"
- "9000:9000"
networks:
- agent_network
restart: always
networks:
agent_network:
attachable: true
volumes:
portainer_data:
现在,我意识到portainer代理的目标是为docker作为集群运行时提供一种执行命令的替代解决方案。在独立模式下,不需要代理。
看着official documentation of Portainer in the "Docker Standalone" session,我发现了以下内容:
“使用以下Docker命令来部署Portainer Server;请注意,在独立主机上不需要该代理,但是,如果使用代理,它确实提供了附加功能(请参见下面的Portainer和代理场景):”
针对我的情况的解决方案
因此,我只是在不使用Agent的情况下运行Portainer,并且当我使用Portainer UI部署任何堆栈时,它都可以正常工作。
我希望这对具有相同错误消息的人有所帮助。