Docker容器,Jelastic中的本地网络

时间:2019-06-25 10:27:04

标签: jelastic nextcloud

在某些Jelastic环境中,我想与NextCloud一起安装collabora Online。

设置NextCloud简直是小菜一碟,我只是拍了张正确的docker映像,访问了给定的url和voila公众。

现在我无法使Collabora Online服务器正常工作。

在常规的专用服务器上,运行

docker run -t -d -p 9980:9980 -e“ extra_params =-o:ssl.enable = false”协作/代码

我可以使用http://ip-add:9980

访问Collabora Server

我向Collabora码头工人镜像的节点添加了一个公共IP。

如果我运行:curl -k http://public-ip-add:9980

我得到了curl: (7) couldn't connect to host

http://ip-add:9980

另一种(也是更正确的方法)是运行此docker命令

docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=cloud\\.communecter\\.org\|cloud\\.openappecosystem\\.cc\|cloud\\.cosystem\\.cc' --restart always --cap-add MKNOD collabora/code

并在nginx上配置反向代理,如下所示:

# static files
location ^~ /loleaflet {
    proxy_pass https://localhost:9980;
    proxy_set_header Host $http_host;
}

# WOPI discovery URL
location ^~ /hosting/discovery {
    proxy_pass https://localhost:9980;
    proxy_set_header Host $http_host;
}

# Capabilities
location ^~ /hosting/capabilities {
    proxy_pass https://localhost:9980;
    proxy_set_header Host $http_host;
}

# main websocket
location ~ ^/lool/(.*)/ws$ {
    proxy_pass https://localhost:9980;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $http_host;
    proxy_read_timeout 36000s;
}

# download, presentation and image upload
location ~ ^/lool {
    proxy_pass https://localhost:9980;
    proxy_set_header Host $http_host;
}

# Admin Console websocket
location ^~ /lool/adminws {
    proxy_pass https://localhost:9980;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $http_host;
    proxy_read_timeout 36000s;
}

但是这里nginx不应该是docker镜像,所以我不知道如何正确地将Collabora节点链接到nginx节点。我尝试使用“链接”和“端点”,但没有成功。

1 个答案:

答案 0 :(得分:0)

默认情况下,仅公开端口80和443,但是,您似乎可以为私有端口9980手动添加endpoint,这是应用程序绑定的端口。希望有帮助。