我有一台运行Ubuntu 14.04的Digital Ocean服务器,以及两台运行Docker容器的Web应用程序。一个是Ghost容器,另一个是Jupyter容器(https://hub.docker.com/r/jupyter/notebook/)。我还运行了一个nginx代理容器(https://github.com/jwilder/nginx-proxy)。
问题是websockets不起作用,而Jupyter要求它们能够正常工作。我让Jupyter在http://notes.rooday.com/服务,并且访问它有效,但由于禁用了websockets,它无法连接到ipython内核。我试着研究如何解决这个问题,而我得到的最接近的是这个nginx配置文件https://paste.ubuntu.com/5620850/。
但是,我不确定如何将该配置文件应用于nginx-proxy容器,尤其是以不会干扰我的Ghost容器的方式,该容器也位于nginx-proxy后面({{3 }})。
有人能指出我正确的方向吗?
答案 0 :(得分:1)
听起来您想要做的是为jwilder/nginx-proxy
容器中的一个虚拟主机添加自定义Nginx配置文件。
根据jwilder/nginx-proxy
container documentation 1 ,您必须安装一个包含Nginx配置文件的卷。为此,请将以下内容添加到docker run
命令
-v /path/to/vhost.d:/etc/nginx/vhost.d:ro
然后在您/path/to/vhost.d
的计算机上创建一个名为notes.rooday.com
的文件并添加您的自定义Nginx配置。
答案 1 :(得分:0)
忘了编辑这个,因为我发现真正的问题正在进行(Andy Shinn是正确的,这不是配置问题)。
实际问题不是我的任何Docker容器,甚至不是Digital Ocean服务器本身的任何问题,而是Cloudflare的问题。 Cloudflare尚不支持Websockets,因此任何使用它们的域都必须在Cloudflare DNS面板中呈灰色阴影。