Collabora/code on kubernetes

Hello
I’m trying to install collaborator/code on a Kubernetes server hosted by OVH, unfortunately I manage to access the ~/hosting/discovery page, I did add my nextcloud’s domain in the server settings, but I don’t can’t open a document from nextcloud using the collaborator/code server of my kubernetes.
Do you have an easy to follow doc?

Welcome to the forum @Loubens! Yes we do :slight_smile: Collabora Online for Kubernetes — SDK https://sdk.collaboraonline.com/ documentation

@pedro.silva
Hello
Thank you for that answer
I followed this tutorial, but I don’t have a minikube, I’m hosted on a kubernetes cloud provider (OVH).
I will try to figure out how to configure a reverse proxy in kubernetes.
I have tests of servers that work with a reverse proxy and a collabora/CODE docker, but with Kubernetes I can’t find what I’m looking for.

@pedro.silva
good morning
I have a problem trying to deploy collabora-online on kubernetes:
Error: INSTALLATION FAILED: template: collaborator-online/templates/service.yaml:4:18: executing “collabora-online/templates/service.yaml” at <.Values.global.app.service.name>: nil pointer evaluating interface {}.app
can i get some help?

@rash419 or @lpranam do you think you can help here?

@pedro.silva @rash419 @lpranam
Hello
I wish I had a sample coolwsd.xml file with the new settings to add a WOPI server.
Indeed, since I am on Kubernetes and no longer on Docker, I add a configmap of the coolwsd.xml file directly in my container, and I would like to find the right nomenclature in order to be able to modify my WOPI server directly in it .
Thanks in advance

Today I have this in my WOPI configuration:

    <storage desc="Backend storage">
        <filesystem allow="false" />
        <wopi desc="Allow/deny wopi storage." allow="true">
            <max_file_size desc="Maximum document size in bytes to load. 0 for unlimited." type="uint">0</max_file_size>
            <locking desc="Locking settings">
                <refresh desc="How frequently we should re-acquire a lock with the storage server, in seconds (default 15 mins) or 0 for no refresh" type="int" default="900">900</refresh>
            </locking>
            <alias_groups desc="default mode is 'first' it allows only the first host when groups are not defined. set mode to 'groups' and define group to allow multiple host and its aliases" mode="groups">
                <group>
                    <host desc="hostname to allow or deny." allow="true">https://xxx.mydomain.com</host>
                </group>
                <group>
                    <host desc="hostname to allow or deny." allow="true">https://nextcloud1.mydomain.com</host>
                </group>
            </alias_groups>
        </wopi>

This configuration file is on a Docker that I use for testing and on which it works well, I can open my documents on my nextcloud1.mydomain.com from this Docker, but putting the same configuration on my Kubernetes, that doesn’t work, am I missing something?

@Loubens WOPI configuration looks alright : )

@rash419 @pedro.silva @lpranam
Thank you
So I don’t really know where to look to find the connection problem of my Wopi server on my Libreoffice client…
An idea ?
Tks

@Loubens I will have a look at the problem later today and update you :slight_smile:

@lpranam
Hello
Small evolution of the problem on my side.
I configured my Kubernetes with Nginx-Ingress and it’s OK, I access my page
https://my.domain.com/ = OK
https://my.domain.com/hosting/discovery=OK
However, I have this error in the Libreoffice conainer logs:

wsd-00001-00039 2022-05-20 09:12:35.437534 +0000 [ websrv_poll ] ERR Poco::Net::DNS::resolve(“xxx.xxx.xxx.xxx”) failed: Host not found: xxx. xxx.xxx.xxx| wsd/COOLWSD.cpp:3323
wsd-00001-00039 2022-05-20 09:12:35.437590 +0000 [ websrv_poll ] WRN convert-to: Requesting address is denied: xxx.xxx.xxx.xxx| wsd/COOLWSD.cpp:3329

where xxx.xxx.xxx.xxx is not the address of my Nginx-Ingress, it looks like the Public IP of the cluster of my host OVH.

An idea ?
Thank you

@lpranam
Please, help :pleading_face:

unfortunately, I tried hard but could not reproduce the problem, I also did not see anything wrong with your description.

My guess would be some missing IP configuration in the container everything else seems good.

@lpranam
Hello
Do you have any idea what setting I need to check to get the correct configuration?
Thanks

can you share your Nginx logs probably we can find something in it :slight_smile:

@lpranam
Hello
On the ingress-nginx server side I have this log
xxx.xxx.xxx.xxx - - [13/Jun/2022:09:28:32 +0000] “GET /hosting/capabilities HTTP/1.1” 200 245 “-” “Nextcloud Server Crawler” 137 0.003 [collabora-collabora -9980] 10.2.0.12:9980 245 0.004 200 7677a80f224300fc49a9bbd7d7ec0e3f

where xxx.xxx.xxx.xxx is the IP address of the Kubernetes cluster

and on the collaborator logs container side I have this

wsd-00001-00037 2022-06-13 11:28:32.923922 +0200 [ websrv_poll ] ERR Poco::Net::DNS::resolve(“xxx.xxx.xxx.xxx”) failed: Host not found: 51.210. 249.207| wsd/COOLWSD.cpp:3332
wsd-00001-00037 2022-06-13 11:28:32.924008 +0200 [ websrv_poll ] WRN convert-to: Requesting address is denied: xxx.xxx.xxx.xxx| wsd/COOLWSD.cpp:3338

If you have an idea ?
Thanks

DNS::resolve(“xxx.xxx.xxx.xxx”) failed: Host not found: 51.210. 249.207 Host not found.

Check namespaces, resolution, try to see if there is a route, try to work with FQDNs instead of IPs inside your cluster, or did you find a solution in the meanwhile?

@Loubens if you are still getting WRN convert-to: Requesting address is denied: xxx.xxx.xxx.xxx
add new entry of your ip in net.post_allow.host in coolwsd.xml