Docker:如何通过https强制实现graylog网页界面?

我目前正在努力在Docker环境中通过https工作。 我正在使用jwilder / nginx-proxy,并且有证书。 当我运行:

docker run --name=graylog-prod --link mongo-prod:mongo --link elastic-prod:elasticsearch -e VIRTUAL_PORT=9000 -e VIRTUAL_HOST=test.myserver.com -e GRAYLOG_WEB_ENDPOINT_URI="http://test.myserver.com/api" -e GRAYLOG_PASSWORD_SECRET=somepasswordpepper -e GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918 -d graylog2/server 

我得到以下错误:

我们遇到连接到运行在http://test.myserver.com:9000/api的Graylog服务器的问题。 请确认服务器运行正常并正常工作。

一旦我们可以连接到服务器,您将自动redirect到上一页。

这是我们从服务器收到的最后一个回应:

错误消息错误请求原始请求GET http://test.myserver.com/api/system/sessions状态码未定义完整错误消息错误:请求已终止可能的原因:networking处于脱机状态,访问控制-Allow-Origin,页面正在卸载等

当我转到邮件中的URL时,我收到了一个回复:{“session_id”:null,“username”:null,“is_valid”:false}这是我在运行没有https的Graylog时得到的回复。

在graylog的docker日志文件中没有提到。 docker工人ps:

容器ID图像命令
创build状态端口
NAMES 56c9b3b4fc74 graylog2 / server“/docker-entrypoint.s”5分钟前up 5分钟9000 / tcp,12900 / tcp
graylog-PROD

当运行docker选项-p 9000:9000时,所有的工作都没有https,但只要我强迫它通过https我得到这个错误。

任何人知道我在做什么错在这里?

非常感谢!