Koozali.org: home of the SME Server

Collabora pour nextcloud

Offline pat

  • *
  • 22
  • +0/-0
Collabora pour nextcloud
« on: March 09, 2022, 09:36:28 AM »
Bonjour,

J'ai installé nextcloud sur ma sme10 mais je ne parviens pas à installer un serveur collabora pour lire les fichiers doc. Existe t il un tutoriel ?
Pour ceux qui le font tourner, de quelle manière y arrivez vous : en local sur le serveur SME, sur une machine placée sur le réseau lan, sur un vps, ... ?
Question subsidiaire : avez vous installé la version 23 de nextcloud?
Merci pour votre retour.
« Last Edit: March 09, 2022, 09:39:46 AM by pat »

Offline ReetP

  • *
  • 3,722
  • +5/-0
Re: Collabora pour nextcloud
« Reply #1 on: March 09, 2022, 10:35:25 AM »
Possible, but not easy. I haven't seen anyone else do this.

You can install using docker as per this, but you'll have to master docker on SME.

(I have it running but no interest from others to help develop a contrib.....)

https://nextcloud.com/collaboraonline/

They can run on the same machine, or possibly on different ones, but you would have to read on how to configure this (most things are 'possible' but difficulty varies)

Nextcloud 23 requires a higher version of Maria DB and we haven't got round to fixing that yet as we have a lot of infrastructure changes to do, other pressing core SME fixes required, and very few people helping. So it isn't top of our priority list right now.

It will get done, at some point. You are welcome to help work on it.
...
1. Read the Manual
2. Read the Wiki
3. Don't ask for support on Unsupported versions of software
4. I have a job, wife, and kids and do this in my spare time. If you want something fixed, please help.

Bugs are easier than you think: http://wiki.contribs.org/Bugzilla_Help

If you love SME and don't want to lose it, join in: http://wiki.contribs.org/Koozali_Foundation

Offline mmccarn

  • *
  • 2,626
  • +10/-0
Re: Collabora pour nextcloud
« Reply #2 on: March 09, 2022, 12:37:30 PM »
I run Collabora on a separate virtual server running nethserver with the nethserver-collabora package installed.

Depending on your user count it might be easier to install the Onlyoffice integration that Nextcloud supports natively using the onlyoffice connector app with onlyoffice installed on the nextcloud server using the documentserver_community app.

Onlyoffice seems to be officially supported with Nextcloud by both the nextcloud devs and the onlyoffice devs. 

I have nextcloud running on Ubuntu 20.04, with Collabora (as mentioned) running on Nethserver and Onlyoffice running using docker on a separate Ubuntu system.

Offline Jean-Philippe Pialasse

  • *
  • 2,746
  • +11/-0
  • aka Unnilennium
    • http://smeserver.pialasse.com
Re: Collabora pour nextcloud
« Reply #3 on: March 09, 2022, 01:33:11 PM »
j’utilise onlyoffice depuis quelques années avec la version docker. 

je pourrais partager les templates pour la partie httpd.conf.
Une fois docker installé sur sme10 l’installation de l’image docker est comme n’importe quel autre linux. 

Offline Jean-Philippe Pialasse

  • *
  • 2,746
  • +11/-0
  • aka Unnilennium
    • http://smeserver.pialasse.com
Re: Collabora pour nextcloud
« Reply #4 on: March 09, 2022, 01:35:39 PM »
en fait j’avais deja fait le how to https://wiki.koozali.org/ONLYOFFICE


tu pourrais t’inspirer de cela probablement pour collabora.

Offline pat

  • *
  • 22
  • +0/-0
Re: Collabora pour nextcloud
« Reply #5 on: March 09, 2022, 01:57:35 PM »
Merci pour vos réponses. Je ne voulais pas aller vers docker mais je sens qu'il va falloir me mettre à l'eau !
Je regarde au préalable onlyoffice !

Offline Jean-Philippe Pialasse

  • *
  • 2,746
  • +11/-0
  • aka Unnilennium
    • http://smeserver.pialasse.com
Re: Collabora pour nextcloud
« Reply #6 on: March 10, 2022, 05:49:34 AM »
une derniere chance avant Docker si tu as une machine de test (une vm fait l'affaire)

https://wiki.koozali.org/Collabora

c'est une adaptation de la contribution dont parle  mmccarn de nethserver

j'ai juste pris le temps de l'adapter et elle merite d'etre tester avant d'aller en production, si tu veux prendre le temps nécessaire, cela serait apprecié

Offline ReetP

  • *
  • 3,722
  • +5/-0
Re: Collabora pour nextcloud
« Reply #7 on: March 10, 2022, 09:58:23 AM »
I run Collabora on a separate virtual server...

Nice work Mike.

Can you wiki any of it? I hadn't seen anything about it before.
...
1. Read the Manual
2. Read the Wiki
3. Don't ask for support on Unsupported versions of software
4. I have a job, wife, and kids and do this in my spare time. If you want something fixed, please help.

Bugs are easier than you think: http://wiki.contribs.org/Bugzilla_Help

If you love SME and don't want to lose it, join in: http://wiki.contribs.org/Koozali_Foundation

Offline ReetP

  • *
  • 3,722
  • +5/-0
Re: Collabora pour nextcloud
« Reply #8 on: March 10, 2022, 10:40:55 AM »
...
1. Read the Manual
2. Read the Wiki
3. Don't ask for support on Unsupported versions of software
4. I have a job, wife, and kids and do this in my spare time. If you want something fixed, please help.

Bugs are easier than you think: http://wiki.contribs.org/Bugzilla_Help

If you love SME and don't want to lose it, join in: http://wiki.contribs.org/Koozali_Foundation

Offline pat

  • *
  • 22
  • +0/-0
Re: Collabora pour nextcloud
« Reply #9 on: March 10, 2022, 12:41:03 PM »
une derniere chance avant Docker si tu as une machine de test (une vm fait l'affaire)

https://wiki.koozali.org/Collabora

c'est une adaptation de la contribution dont parle  mmccarn de nethserver

j'ai juste pris le temps de l'adapter et elle merite d'etre tester avant d'aller en production, si tu veux prendre le temps nécessaire, cela serait apprecié

Whaou la classe ! j'essaye dès que je peux !!!!

Je suis bluffé par votre réactivité à tous ! Bravo !

Je te fais un retour bien sûr

Offline Jean-Philippe Pialasse

  • *
  • 2,746
  • +11/-0
  • aka Unnilennium
    • http://smeserver.pialasse.com
Re: Collabora pour nextcloud
« Reply #10 on: March 10, 2022, 05:08:41 PM »
Whaou la classe ! j'essaye dès que je peux !!!!

Je suis bluffé par votre réactivité à tous ! Bravo !

Je te fais un retour bien sûr

tout cela dépend de la facilité de mise en œuvre, et du temps disponible, nous sommes tous des bénévoles!

Là le gros du travail était deja fait, comme l'a pointé mmccarn!

J'ai déjà fait une deuxième version car j'avais oublié un point important dans l'adaptation.

Offline pat

  • *
  • 22
  • +0/-0
Re: Collabora pour nextcloud
« Reply #11 on: March 13, 2022, 07:55:31 PM »
Bonjour Jean-Philippe,
J'ai commencé à travailler et tester collabora !
J'ai un peu galéré car je ne savais pas qu'il fallait rajouter --enablerepo=smetest en mode test

N'y a t'il pas une erreur dans le code que tu as proposé :
db domain set collabora.mydomain.com domainle Content Primary Description collabora Nameservers internet  letsencryptSSLcert enabled
à la place de :
db domains set collabora.mydomain.com domainle Content Primary Description collabora Nameservers internet  letsencryptSSLcert enabled

Offline pat

  • *
  • 22
  • +0/-0
Re: Collabora pour nextcloud
« Reply #12 on: March 13, 2022, 10:51:29 PM »
Premiers tests et j'ai réussi !!!

Je constate que dans coolwsd.xml, il y a le domaine local mal renseigné :
<host allow="true" desc="Regex pattern of hostname to allow or deny.">sme10.sme10-test.local</host>
au lieu de
<host allow="true" desc="Regex pattern of hostname to allow or deny.">sme10\.sme10-test\.local</host>

Mais j'en ai bavé pour le ssl !!!

Et il n'y a pas d'erreur. Mais je n'ai pas compris pourquoi il n'y a pas de "s" à "domain" et pourquoi c'est "domainle"

Après, il faudra configurer le hook de dehydrated pour copier les fichiers *.pem dans /etc/coolwsd/ avec un chown cool:cool

Offline Jean-Philippe Pialasse

  • *
  • 2,746
  • +11/-0
  • aka Unnilennium
    • http://smeserver.pialasse.com
Re: Collabora pour nextcloud
« Reply #13 on: March 13, 2022, 11:18:49 PM »
Premiers tests et j'ai réussi !!!
cool, ce qui veut dire ?

Je constate que dans coolwsd.xml, il y a le domaine local mal renseigné :
<host allow="true" desc="Regex pattern of hostname to allow or deny.">sme10.sme10-test.local</host>
au lieu de
<host allow="true" desc="Regex pattern of hostname to allow or deny.">sme10\.sme10-test\.local</host>

oui idealement les . devraient être echapés pour ne pas accepter m'importe quel caractere, mais cela ne doit pas empecher le fonctionnement, meme si sous optiomal.
peux tu confirmer ?


Mais j'en ai bavé pour le ssl !!!
peux tu expliquer ?
normalement tu n'as pas à toucher le fichier  coolwsd.xml, et C'est volontaire que coolwsd n'utilise pas de ssl, puisque ,il passe en proxy derrière httpd...
c'est donc httpd qui crypte les echanges entre collabora et NextCloud et entre collabora et le client.


Et il n'y a pas d'erreur. Mais je n'ai pas compris pourquoi il n'y a pas de "s" à "domain" et pourquoi c'est "domainle"

pour que le domaine ne soit pas utilisé par le template de /etc/httpd/conf/httpd.conf et qu'un Virtualhost poitnant vers l'ibay Primary ne soit créé pour le domaine cachant le domaine dédié de collabora

collabora dispose de son propre template pour httpd qui créé un Virtualhost pour le domaine renseigné dans sa configuration.


Après, il faudra configurer le hook de dehydrated pour copier les fichiers *.pem dans /etc/coolwsd/ avec un chown cool:cool
en fait tu n'a pas besoin de faire cela ...


pour fonctionner tu as besoin de

2 domaines ou sous domaines pintant vers ton serveur : mondomaine.com et collabora.mondomaine.com
et éventuellement un 3e :  cloud.mondomaine.com

ces domaines doivent etre configuré sur ton service dns et Let's encrypt doit pouvoir communiquer avec ton serveur pour valider le certificat. tes postes clients aussi doivent pouvoir savoir que c'est ton serveur qui sert ces domaines. Un domaine .local ne se qualifie pas à cela pour le certificat...

mondomaine.com  est le domaine principal de ton serveur et permet de pointer vers https://mondomaine.com/nextcloud
si tu le désire et suit la configuration avancée de NextCloud tu utilise plutot le lien  https://cloud.mondomaine.com pour acceder à ton NextCloud

smeserver-letsencrypt configuré pour tes 2 domaines
smeserver-nextcloud installé

puis enfin
smeserver-collabora pour lequel tu as ajouté le domaine comme décrit dans le wiki pour que let's encrypt puisse ajouter le domaine dans sa liste de certificats.


wsd n'est donc pas accessible de l’extérieur du serveur directement, mais par l'entremise du proxy fait par httpd
 tu accèdes à NextCloud via https://cloud.mondomaine.com ou https://mondomaine.com/nextcloud suivant ta configuration puis il fait appelle à https://collabora.mondomaine.com qui pointe vers le même serveur mais un autre VirtualHost qui fait un proxy vers le service coolwsd.

« Last Edit: March 13, 2022, 11:21:42 PM by Jean-Philippe Pialasse »

Offline pat

  • *
  • 22
  • +0/-0
Re: Collabora pour nextcloud
« Reply #14 on: March 20, 2022, 09:38:23 PM »
Merci pour cette réponse précise qui me permet de comprendre un peu mieux le processus.
Mais ca ne marche plus !
J'ai tout recommencé
L'installation s'est faite sans problème
coolwsd démarre bien sans erreur
J'arrive a avoir un retour "OK" en faisant un curl -k http://localhost:9980
Idem avec curl -k http://localhost:9980/hosting/discovery
Par contre, si je me connecte sur https://collabora.mondomaine.com je tombe bien sur l'ebay primary mais si je tape https://collabora.mondomaine.com:9980 ça me met une erreur de chargement de page.
Dans le httpd.conf, j'ai bien vu les proxypass qui pointent sur 127.0.0.1:9980

curl -v http://localhost:9980
* About to connect() to localhost port 9980 (#0)
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 9980 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: localhost:9980
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Sun, 20 Mar 2022 20:12:00
< Server: COOLWSD HTTP Server 21.11.2.4
< Content-Length: 2
< Content-Type: 10
< Last-Modified: Sun, 20 Mar 2022 20:12:00
< Connection: close
<
* Closing connection 0

curl -v http://collabora.mondomaine.com:9980
* About to connect() to collabora.mondomaine.com port 9980 (#0)
*   Trying 192.168.1.98...
* Connexion refusée
* Failed connect to collabora.mondomaine.com:9980; Connexion refusée
* Closing connection 0
curl: (7) Failed connect to collabora.mondomaine.com:9980; Connexion refusée

192.168.1.98 étant l'adresse de ma sme

Je ne sais plus où regarder !