【问题标题】:docker-compose SSL error: hostname '192.168.99.100' doesn't match 'localhost'docker-compose SSL 错误:主机名“192.168.99.100”与“localhost”不匹配
【发布时间】:2016-01-25 11:40:37
【问题描述】:

我正在尝试在由 cntlm 屏蔽的代理后面运行 docker-compose。换句话说,我的代理设置只是 localhost:3128

1) 首先,我创建了一个新的docker-machine 设置代理并重新生成证书:

HOST=10.16.13.232  # IP address of my Mac
PORT=3128  # port cntlm is listening

docker-machine create \
    --engine-env HTTP_PROXY=http://$HOST:$PORT \
    --engine-env HTTPS_PROXY=http://$HOST:$PORT \
    --engine-env NO_PROXY=*.local,169.254/16,localhost,127.0.0.*,10.*,192.168.*,*.example.com \
    -d virtualbox \
    --virtualbox-memory 2048 \
    --virtualbox-disk-size 102400 \
    my_new_machine

yes | docker-machine regenerate-certs my_new_machine

2) 我通过点击设置 ENV 变量:

eval $("docker-machine env my_new_machine")

3) 在当前目录中,我创建了 docker-compose.yml,其中包含:

zookeeper:
  image: jplock/zookeeper
  container_name: zookeeper
  ports:
    - "2181:2181"
    - "2888:2888"
    - "3888:3888"

solr1:
  image: makuk66/docker-solr:4.10.4
  container_name: solr1
  ports:
    - "8983:8983"
  links:
    - "zookeeper:ZK"
  command: /opt/solr/bin/solr start -f -c -z zookeeper -a "-Dbootstrap_confdir=./solr/collection1/conf -Dcollection.configName=myconf -DnumShards=2"

solr2:
  image: makuk66/docker-solr:4.10.4
  container_name: solr2
  ports:
    - "8984:8983"
  links:
    - "zookeeper:ZK"
  command: /opt/solr/bin/solr start -f -c -z zookeeper

4) 作为最后一步,我继续点击docker-compose up,但仅当我在我的 cntlm 代理后面时才会收到以下错误:

ERROR: SSL error: hostname '192.168.99.100' doesn't match 'localhost'

在家里,没有任何代理docker-compose 工作得很好。

我尝试在外面寻找任何解决方案,但我无法找到/理解此类解决方案。

有什么想法吗?

提前致谢:-)

【问题讨论】:

  • 这看起来像是一个带有错误替代名称的自签名证书。你设置subjectAltNames了吗? (stackoverflow.com/a/19290439/6309, stackoverflow.com/a/34350435/6309)
  • 嗯,不……有没有办法在启动docker-machine create 命令时设置subjectAltNames?
  • 顺便说一下,我创建了一台机器,名称为:local.mymachine.com,但问题仍然存在

标签: docker docker-compose solrcloud docker-machine


【解决方案1】:

在 Linux 上,如果您使用 pip 安装了 docker compose,请使用以下命令将其卸载:

pip uninstall docker-compose

并尝试手动安装。这对我有用:

curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

如果您有权限问题,那么您很可能无法写入 /usr/local/bin/docker-compose。 --> 试试“sudo su”。

这里参考:https://docs.docker.com/compose/install/

享受吧! :-)

【讨论】:

    【解决方案2】:

    使用最新版本的 docker (1.11.1) docker-compose 运行良好(也在代理之后)

    【讨论】:

      猜你喜欢
      • 2017-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-17
      • 2015-04-30
      • 1970-01-01
      相关资源
      最近更新 更多