XWiki est une plateforme wiki open source populaire au niveau de l'entreprise écrite en Java. Avec une extensibilité et une facilité d'utilisation, XWiki est déployé dans diverses entreprises en tant que référentiel de connaissances, portail public, etc.
Dans cet article, je vais vous guider à travers le processus d'installation de XWiki 9.11.2 sur une instance de serveur Ubuntu 16.04 LTS. OpenJDK 8, Tomcat 8 et MySQL 5.7 seront automatiquement installés en tant que dépendances pendant le processus d'installation.
Conditions préalables
- Une nouvelle instance de serveur Vultr Ubuntu 16.04 LTS x64 avec au moins 2 Go de mémoire, 4 Go ou plus recommandé. Supposons que son adresse IP soit
203.0.113.1
.
- Un utilisateur sudo .
- L'instance de serveur a été mise à jour vers le dernier état stable à l'aide de
apt
.
Configurer le repo XWiki LTS APT
Connectez-vous en tant qu'utilisateur sudo, puis téléchargez et configurez le référentiel APT XWiki LTS (Long Term Support) sur votre instance de serveur:
cd
wget -q "https://maven.xwiki.org/public.gpg" -O- | sudo apt-key add -
sudo wget "https://maven.xwiki.org/lts/xwiki-lts.list" -P /etc/apt/sources.list.d/
sudo apt update
Remarque: Si vous souhaitez essayer la dernière version stable de XWiki (mais PAS LTS), vous pouvez télécharger le dépôt XWiki APT ci-dessous à la place:
cd
wget -q "https://maven.xwiki.org/public.gpg" -O- | sudo apt-key add -
sudo wget "https://maven.xwiki.org/stable/xwiki-stable.list" -P /etc/apt/sources.list.d/
sudo apt update
Installez l'ensemble XWiki tout-en-un (y compris XWiki LTS 9.11.2, Tomcat 8, MySQL 5.7, etc.)
Lorsqu'il est déployé en production, XWiki doit fonctionner avec un conteneur Java Servlet et un logiciel de base de données. En tant que plateforme wiki flexible, XWiki propose officiellement diverses options d'intégration. Vous pouvez utiliser la commande suivante pour afficher toutes les options disponibles dans le référentiel XWiki LTS APT:
apt search xwiki
Le résultat de la recherche ressemblera à ceci:
xwiki-common/lts 9.11.2 all
xwiki-mysql-common/lts 9.11.2 all
xwiki-pgsql-common/lts 9.11.2 all
xwiki-solr-data/lts 9.11.2 all
xwiki-tomcat7-common/lts 9.11.2 all
xwiki-tomcat7-mysql/lts 9.11.2 all
xwiki-tomcat7-pgsql/lts 9.11.2 all
xwiki-tomcat8-common/lts 9.11.2 all
xwiki-tomcat8-mysql/lts 9.11.2 all
xwiki-tomcat8-pgsql/lts 9.11.2 all
Si vous souhaitez utiliser XWiki avec les dépendances les plus courantes, vous pouvez installer tous les composants requis dans une seule commande comme suit:
sudo apt install xwiki-tomcat8-mysql/lts -y
Pendant le processus d'installation, il vous sera demandé de configurer un nouveau mot de passe pour l'utilisateur root MySQL plusieurs fois. Laissez simplement le champ du mot de passe vide et appuyez sur Enter
pour ignorer cette étape pour l'instant. Nous aborderons ce problème plus tard lors de la sécurisation de l'installation de MySQL.
Lorsqu'on vous demande si vous le souhaitez Configure database for xwiki with dbconfig-common?
, choisissez <Yes>
, puis appuyez sur ENTER.
Lorsque MySQL application password for xwiki
vous êtes invité à fournir un , vous pouvez saisir un mot de passe d'application MySQL spécifique ou laisser le champ de mot de passe vide. Ce dernier dira à XWiki d'utiliser un mot de passe d'application MySQL aléatoire.
Après avoir installé XWiki et toutes les dépendances requises, sécurisez l'installation de MySQL:
sudo /usr/bin/mysql_secure_installation
Au cours du processus, le programme vous posera quelques questions. Répondez-leur comme ci-dessous:
- Souhaitez-vous configurer le plug-in VALIDATE PASSWORD? Y
- Veuillez saisir 0 = FAIBLE, 1 = MOYEN et 2 = FORT: 2
- Nouveau mot de passe:
a-strong-MySQL-root-password
- Ré-entrez le nouveau mot de passe:
a-strong-MySQL-root-password
- Souhaitez-vous continuer avec le mot de passe fourni? Y
- Supprimer les utilisateurs anonymes? Y
- Ne pas autoriser la connexion root à distance? Y
- Supprimer la base de données de test et y accéder? Y
- Recharger les tables de privilèges maintenant? Y
Améliorez la sécurité de XWiki en modifiant le fichier de configuration XWiki.
Utilisez l'éditeur vi pour ouvrir un fichier de configuration XWiki:
sudo vi /etc/xwiki/xwiki.cfg
Trouvez les deux lignes ci-dessous:
xwiki.authentication.validationKey=totototototototototototototototo
xwiki.authentication.encryptionKey=titititititititititititititititi
Remplacez les valeurs des deux paramètres par deux chaînes aléatoires différentes et assurez-vous simplement que la longueur de chaque chaîne est la même que l'autre, par exemple:
xwiki.authentication.validationKey=f0130dfa6fc841e920d5e1056184c03e
xwiki.authentication.encryptionKey=z84kf92ko073tgjdnvkdfmms91qa0ke4
Sauvegarder et quitter:
:wq!
Le quota de mémoire par défaut est trop faible pour exécuter Tomcat 8 et XWiki dans. Vous devez augmenter le quota de mémoire par défaut comme suit avant de pouvoir démarrer correctement une instance XWiki dans Tomcat 8.
sudo cp /etc/default/tomcat8 /etc/default/tomcat8.bak
sudo vi /etc/default/tomcat8
Trouvez la ligne:
JAVA_OPTS="-Djava.awt.headless=true -Xmx128m -XX:+UseConcMarkSweepGC"
Modifiez la ligne comme indiqué ci-dessous:
JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m"
Remarque: 1024 Mo de mémoire n'est que le quota minimum pour exécuter un petit ou moyen site XWiki. Vous devrez peut-être faire des ajustements à cette ligne en fonction de vos demandes spécifiques.
Sauvegarder et quitter:
:wq!
Redémarrez Tomcat 8 afin de mettre en œuvre toutes vos modifications:
sudo systemctl restart tomcat8.service
Modifiez les règles du pare-feu UFW afin de permettre l'accès Web sur le port 8080
:
sudo ufw allow 8080
sudo ufw enable
Initialiser XWiki sur l' Distribution Wizard
interface " " web
À ce stade, vous avez configuré un site XWiki fonctionnel mais vide. Afin de remplir le contenu, vous devez terminer plusieurs tâches de suivi, y compris la création d'un utilisateur administrateur et l'installation d'une version et des extensions requises pour ce wiki, sur l'interface Web XWiki initiale nommée " Distribution Wizard
".
Pointez votre navigateur Web préféré http://203.0.113.1:8080/xwiki
sur " Distribution Wizard
" et vous serez automatiquement amené sur l' interface " " Web. Cliquez sur le Continue
bouton "" pour lancer l'assistant.
Sur la Step 1 - Admin user
page " ", vous devez saisir les informations d'identification de l'utilisateur administrateur, par exemple:
FIRST NAME: `John`
LAST NAME: `Doe`
USERNAME (Required): `johndoe`
PASSWORD (Required): `yourpassword`
CONFIRM PASSWORD (Required): `yourpassword`
EMAIL ADDRESS: `[email protected]`
Après avoir rempli tous les champs obligatoires, cliquez sur le Register and login
bouton "" pour continuer.
Sur la page suivante qui affiche " You are connected with user John Doe.
", cliquez sur le Continue
bouton "" pour créer l'utilisateur administrateur John Doe
dont le nom d'utilisateur est johndoe
et continuer.
Sur la Step 2 - Flavor
page " ", cliquez sur la XWiki Standard Flavor 9.11.2
zone " " pour mettre en surbrillance cette saveur, puis cliquez sur le Install this flavor
bouton "" pour continuer.
Sur la page suivante qui détaille le " XWiki Standard Flavor 9.11.2
", cliquez sur le Install
bouton "" pour effectuer l'installation.
Une fois la version installée, toutes les extensions requises seront répertoriées sur la page, cliquez sur le Continue
bouton "" pour les installer toutes.
Une fois la saveur et toutes les extensions requises installées, cliquez sur le Continue
bouton "" dans le coin inférieur droit pour continuer.
Sur la Step 4 - Report
page " ", vous pouvez consulter toutes les pages créées.
Si nécessaire, vous pouvez supprimer toutes les pages impopulaires en cliquant sur le X
bouton rouge correspondant .
Enfin, cliquez sur le Continue
bouton "" pour terminer le " Distribution Wizard
". Vous serez amené dans le tableau de bord XWiki en tant qu'utilisateur administrateur que vous aviez configuré précédemment.
(Facultatif) Raccourcissez l'URL du site XWiki
Par défaut, étant donné que Tomcat peut servir plusieurs applications à la fois, vous devez accéder à votre site XWiki à l'URL http://203.0.113.1:8080/xwiki
. Cependant, si XWiki est la seule application exécutée dans Tomcat et que vous souhaitez raccourcir l'URL du site XWiki en supprimant le /xwiki
suffixe, vous devez modifier trois fichiers de configuration XWiki comme suit.
Modification de fichier 1:
cd /etc/tomcat8/Catalina/localhost/
sudo cp xwiki.xml ROOT.xml
sudo mv xwiki.xml xwiki.xml.bak
Modification de fichier 2:
cd /etc/xwiki
sudo cp xwiki-tomcat8.xml xwiki-tomcat8.xml.bak
sudo vi xwiki-tomcat8.xml
Trouvez la ligne:
<Context path="/xwiki" docBase="/usr/lib/xwiki" privileged="true" crossContext="true">
Modifiez la valeur du paramètre de chemin:
<Context path="/" docBase="/usr/lib/xwiki" privileged="true" crossContext="true">
Sauvegarder et quitter:
:wq!
Modification de fichier 3:
cd /etc/xwiki
sudo cp xwiki.cfg xwiki.cfg.bak
sudo vi xwiki.cfg
Trouvez la ligne:
# xwiki.webapppath=
Décommentez-le:
xwiki.webapppath=
Sauvegarder et quitter:
:wq!
Enfin, redémarrez Tomcat 8 afin d'appliquer toutes vos modifications:
sudo systemctl restart tomcat8.service
A partir de maintenant, vous visiterez http://203.0.113.1:8080/
directement votre site XWiki .
(Facultatif) Configurer un proxy inverse Nginx
Par défaut, Tomcat 8 fonctionne sur le port 8080
et vous ne pouvez visiter votre site XWiki qu'à partir du même port. Si vous souhaitez faciliter l'accès des visiteurs en supprimant la partie du numéro de port, vous pouvez installer Nginx comme proxy inverse entre XWiki et les visiteurs.
Tout d'abord, installez Nginx en utilisant apt:
sudo apt install nginx -y
Ensuite, configurez Nginx en tant que proxy inverse en modifiant ses configurations de site par défaut:
cd /etc/nginx/sites-available
sudo mv default default.bak
sudo vi default
Remplissez le fichier avec les informations suivantes:
server {
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Sauvegarder et quitter:
:wq!
Démarrez le service Nginx et configurez-le pour qu'il démarre automatiquement au démarrage du système:
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Enfin, modifiez les règles de pare-feu UFW en conséquence:
sudo ufw allow 80
sudo ufw deny 8080
sudo ufw reload
Désormais, les visiteurs de votre site XWiki n'ont plus besoin de spécifier le numéro de port. Ils devraient visiter directement http://203.0.113.1/
.