Présentation de GROWI sur Raspberry Pi 4 modèle B (Ubuntu)

introduction

Cet article résume la procédure de travail lorsque GROWI a été précédemment construit en tant que Wiki privé sur Raspberry Pi 4 Model B (ci-après RP4B). L'introduction utilisant l'image officielle de Docker n'a pas fonctionné, je l'ai donc essayée manuellement.

La configuration initiale de RP4B lui-même n'est pas traitée dans cet article car elle est supposée avoir été effectuée à l'avance.

environnement

Dans cet article, nous supposons ce qui suit pour différentes adresses réseau.

Page de référence

nodejs

(J'ai un vague souvenir ici) En gros, si vous suivez la procédure du Document officiel Ça aurait dû être bon. Cependant, depuis GROWI 3.6 ou version ultérieure, la version de nodejs doit être 10.x ou 12.x, alors ne lisez que cela.

$ cd ~
$ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh
$ sudo bash nodesource_setup.sh
$ sudo apt install nodejs
$ sudo npm install -g yarn #Installation globale

Si l'installation de nodejs réussit, les fichiers suivants seront créés et le référentiel sera ajouté.

:/etc/apt/sources.list.d/nodesource.list


deb https://deb.nodesource.com/node_12.x eoan main
deb-src https://deb.nodesource.com/node_12.x eoan main

Elasticsearch

Je l'ai fait en référence à ici.

Tout d'abord, présentez Java.

$ sudo apt install openjdk-8-jre

Si vous avez plusieurs versions de Java installées, basculez avec la commande suivante (peut ne pas être nécessaire) (Site de référence: http://note.kurodigi.com/post-0-2/)

$ sudo update-alternatives -config java
#Les versions installées sont répertoriées.
#Entrez le numéro de la version que vous souhaitez utiliser et appuyez sur Entrée.

DL le fichier d'archive Elasticsearch et décompressez-le. Consultez le Site officiel pour la version à installer pour en faire la dernière version de la série 6.x. La bonté.

Elasticsearch [piège qui ne peut pas être démarré par l'utilisateur root](https://confluence.atlassian.com/bitbucketserverkb/when-using-the-root-user-elasticsearch-cannot-be-started-due-to-don-t- Il existe run-elasticsearch-as-root-847751401.html). Par conséquent, il semble préférable de l'extraire sous le répertoire personnel d'un utilisateur autre que la racine appropriée. Cette fois, il a été développé en tant que /home/{username}/.local/elasticsearch-6.8.8/.

$ cd ~
$ mkdir .local
$ chmod 755 .local
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.8.tar.gz
$ tar zxvf elasticsearch-6.8.8.tar.gz -C .local
$ cd .local
$ ln -s elasticsearch-6.8.8 elasticsearch #Créer un lien symbolique
$ echo "xpack.ml.enabled: false" >> elasticsearch/config/elasticsearch.yml # X-Désactivez Pack Machine Learning car il ne fonctionne pas dans l'environnement ARM.

Testez l'opération.

$ cd ~
$ cd .local/elasticsearch
$ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64
$ ./bin/elasticsearch & #Commencez en tant que processus d'arrière-plan
$ curl http://localhost:9200

Un service

Inscrivez-vous en tant que service en vous référant à ici. Tout d'abord, créez un fichier elasticsearch.service avec les privilèges su.

/etc/systemd/system/elasticsearch.service


[Unit]
After=syslog.target network.target

[Service]
Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64"
ExecStart=/home/{username}/.local/elasticsearch/bin/elasticsearch
WorkingDirectory=/home/{username}/.local/elasticsearch
User={username}
Group={groupname}
Nice=10
SyslogIdentifier=Elasticsearch
StandardOutput=syslog
Restart=on-failure
KillSignal=SIGINT

[Install]
WantedBy=multi-user.target

Après avoir confirmé qu'il peut être démarré, définissez le démarrage automatique.

$ sudo systemctl start elasticsearch  #Démarrage manuel
$ sudo systemctl status elasticsearch #Vérifiez s'il fonctionne correctement
$ sudo systemctl enable elasticsearch #Réglage de démarrage automatique

Introduction au plug-in

$ cd ~
$ cd .local/elasticsearch
$ bin/elasticsearch-plugin install analysis-kuromoji
$ bin/elasticsearch-plugin install analysis-icu
$ ls -la plugin #Vérifiez le plug-in DL
$ sudo systemctl restart elasticsearch #Redémarrer

MongoDB

$ sudo apt install mongodb-server
$ sudo systemctl start mongodb
$ sudo systemctl status mongodb
$ sudo systemctl enable mongodb

GROWI

Suivez les étapes dans Documents officiels. Notez que la construction prendra un certain temps.

$ cd /opt
$ sudo git clone https://github.com/weseek/growi /opt/growi
$ cd /opt/growi
$ sudo git tag -l #Vérifiez la dernière version sans RC
$ sudo git checkout -b v3.7.5 refs/tags/v3.7.5 #Vérifiez en coupant une branche de l'étiquette
$ sudo yarn #Cela a pris environ 12 minutes

Testez l'opération. Après le démarrage, utilisez ctrl + z pour créer un processus d'arrière-plan et vérifier.

$ sudo ufw allow from 192.168.1.0/24 to any port 3000 #Ouvrez le port 3000 sur le réseau local
$ sudo \
  MONGO_URI=mongodb://localhost:27017/growi \
  ELASTICSEARCH_URI=http://localhost:9200/growi \
  npm start
#Attendez que le message suivant s'affiche (cela prend un certain temps)
> [email protected] server:prod /opt/growi
> env-cmd -f config/env.prod.js node src/server/app.js

Essayez d'accéder à http://192.168.1.10:3000/ et vérifiez si l'écran de configuration initiale s'affiche.

Un service

Veuillez vous reporter au Document officiel et lire comme il convient. Tout d'abord, créez un fichier growi.service avec les privilèges su. Le téléchargement du fichier doit être MongoDB GridFS.

/etc/systemd/system/growi.service


[Unit]
Description=Growi
After=network.target mongodb.service elasticsearch.service

[Service]
WorkingDirectory=/opt/growi
Environment=PORT=3000 \
            MONGO_URI=mongodb://localhost:27017/growi \
            ELASTICSEARCH_URI=http://localhost:9200/growi \
            FILE_UPLOAD=mongodb \
            MATHJAX=1
ExecStart=/usr/bin/npm start

[Install]
WantedBy=multi-user.target

Après avoir confirmé qu'il peut être démarré, définissez le démarrage automatique.

$ sudo systemctl start growi
$ sudo systemctl status growi
$ sudo systemctl enable growi

Introduction au plug-in

[Document officiel](https://docs.growi.org/ja/admin-guide/management-cookbook/app-settings.html#%E3%83%97%E3%83%A9%E3%82%B0% E3% 82% A4% E3% 83% B3% E8% A8% AD% E5% AE% 9A) et le plug-in GitHub. Cela prend un certain temps.

$ sudo npm install --save growi-plugin-lsx
$ sudo npm install --save growi-plugin-pukiwiki-like-linker
$ cd /opt/growi
$ sudo systemctl stop growi
$ sudo yarn
$ sudo systemctl start growi

Recommended Posts

Présentation de GROWI sur Raspberry Pi 4 modèle B (Ubuntu)
Installez CentOS 7 sur Raspberry pi 4 modèle B
Connectez-vous en série à Ubuntu sur Raspberry Pi
Mettez Ubuntu 20.04.1 dans Raspberry 4
Installation sans tête d'Ubuntu 20.10 sur Raspberry Pi
Je n'ai pas pu installer docker avec raspberry pi2 b +.
Créer un environnement de bureau Ubuntu 20.04 LTS sur Raspberry Pi 4 (+ localisation japonaise)
Comment exécuter javafx avec Raspeye publié le 12/07/2020