Blog de dada

DevOps, bidouilleur et routard plein de logiciels libres

Archives avril 2017

Mastodon : Oops! An unexpected error occured

Rédigé par dada / 14 avril 2017 / 3 commentaires




Si, par curiosité, vous avez monté votre instance Mastodon pour vérifier l'intérêt du nouveau réseau social libre du moment, vous êtes peut-être tombés sur cette erreur à la relance des services. Tout semble bien se passer mais votre timeline publique et vos notifications ne marchent plus. Enfin, elles ne contiennent que les événements en cours, pas les passés.

Oops! An unexpected error occured

Comme contexte, j'ai rencontré ce souci lors du passage à la 1.1.2. N'ayant pas fait le passage à la 1.1.1, vous aurez peut-être déjà fait une partie de ce que je vais raconter ci-dessous.

Mettre à jour Ruby et réinstaller ses dépendances

Ces opérations se font avec l'utilisateur dédié à Mastodon, pas en root.

Pour ruby :
rbenv install 2.4.1 
Pour ses dépendances :
gem install bundler 
bundle install --deployment --without development test 
yarn install && yarn upgrade 
Si vous avez le regard perçant, vous avez remarqué la présence du yarn upgrade qui va vous éviter l'erreur à l'origine de l'écriture de ce billet.

Nettoyer et recompiler les assets

Le nettoyage :
RAILS_ENV=production bundle exec rails assets:clean 
La recompilation :
RAILS_ENV=production bundle exec rails assets:precompile 
Une fois tout ça fait, vous pouvez relancer votre instance Mastodon et revenir tooter parmi nous !

Installer Collabora Online avec Nextcloud

Rédigé par dada / 05 avril 2017 / 14 commentaires




Le soleil repointe le bout de son nez et je ne trouve plus le temps de sortir des billets. L'apéro passe avant tout mais malgré ça, j'ai quand même pas mal joué avec mon serveur.
D'abord, j'ai changé de crémerie, encore, pour laisser tomber mon C1 chez Scaleway pour une Kimsufi aux caractéristiques bien plus rigolotes : adieu l'ARM, coucou le Core i3. Ça m'a permis de mettre en place l'objet de ce billet : Collabora Online dans Nextcloud via Docker !

je présuppose que votre machine tourne sous Debian Jessie (what else ?) avec Nextcloud 11.0.2.

Installer Docker

Je suis passé par l'installation de Docker CE. Ça permet d'avoir une version plus récentes de la bête.

On commence par les dépendances qui vont bien :
apt-get install apt-transport-https ca-certificates curl software-properties-common 
On enchaîne sur la clé GPG du dépôt :
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
On ajoute le dépôt dan le sources.list :
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" 
Pour finir, on installe notre nouveau jouet et c'est parti !
apt-get update && apt-get install docker-ce

Mise en place du conteneur de Collabora

On le télécharge :
docker pull collabora/code 
On le lance :
docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=votre\\.instance\\.com' --restart always --cap-add MKNOD collabora/code 
C'est pendant cette étape que je me suis le plus pris la tête... Ils disent de lancer docker avec pour paramètre un sous-domaine pour Collabora alors qu'il ne le faut pas, pas chez moi du moins. En fait, comme Collabora tourne sur le même serveur que mon instance, pas besoin de sous-domaine.

Configurer votre Vhost

Pour Nginx, ajoutez ces lignes dans votre vhost : (snippet ici).

    # static files     
    location ^~ /loleaflet {
        proxy_pass https://127.0.0.1:9980;
        proxy_set_header Host $http_host;
    }       
    # WOPI discovery URL
        location ^~ /hosting/discovery {
        proxy_pass https://127.0.0.1:9980;
        proxy_set_header Host $http_host;    
    }        
    # websockets, download, presentation and image upload
    location ^~ /lool {        
        proxy_pass https://127.0.0.1:9980;
        proxy_set_header Upgrade $http_upgrade;  
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;
   }
Pour Apache2. c'est trop long alors cliquez sur snippet !

Et voilà pour le plus chiant !

Activer Collabora

Maintenant, pour terminer, allez donc activer l'application en la configurant avec le sous-domaine de votre instance : https://votre.instance.com. Pensez bien à cliquer sur "Appliquer" si vous ne voulez pas risquer de devenir chèvre...

Tous ces efforts vous permettront de cliquer paisiblement sur ces 3 nouvelles options :



Amusez-vous bien !