Secure Consul与SSL不起作用
我正在设法确保领事与SSL。 我创build了自己的证书颁发机构(CA)cacert.pem,并为localhost创build了localhost.pem证书。 当前的工作目录如下所示。
certs/cacert.pem certs/localhost.pem config/config.json docker-compose.yml Dockerfile
Dockerfile:
FROM consul:0.7.5 ADD ./config /consul/config/ ADD ./certs /certs/ ENTRYPOINT ["/bin/consul", "agent", "-server", "-bootstrap-expect=1", "-ui", "-data-dir=/consul/data", "-client=0.0.0.0"]
泊坞窗,compose.yml:
version: "2" services: myconsul: image: myconsul:0.7.5 volumes: - /consul/data - /consul/config ports: - "8300:8300" - "8400:8400" - "8500:8500" - "8600:8600" - "8080:8080" command: agent -server -bootstrap-expect=1 -ui -client=0.0.0.0
config.son:
{ "data_dir": "/consul/data", "config_dir": "/consul/config", "log_level": "INFO", "server": true, "addresses": { "https": "0.0.0.0" }, "ports": { "https": 8080 }, "cert_file": "/certs/localhost.pem", "ca_file": "/certs/cacert.pem" }
我通过以下方式build立领事形象:docker build -t myconsul:0.7.5。 通过:docker-compose up -d运行consul容器
http://192.168.99.100:8500/工程,但如果我用本地主机replaceIP地址它不工作https://192.168.99.100:8080/不起作用
问题:
- 为什么http链接以locahlost不起作用?
- 我login到正在运行的容器并在预期的位置find了config.son,但是如何确保consul实际上正在读取configuration文件?
- 什么是在领事做SSL的正确方法?
任何人都可以帮忙 有什么地方可以发表这样的问题吗?
你几乎拥有它,只是:
1.-从config.json中删除“config_dir”:“/ consul / config”
2.-将一个key_file添加到config.json
3.-在docker-compose.yml中添加-config-dir = / consul / config(在命令结尾处)