Installer et Configurer Nexus sur un Serveur
Nexus est une application Java qui s'installe sur un serveur Linux. Voici comment le déployer sur un serveur cloud Ubuntu.
Prérequis — Serveur Cloud
Nexus est gourmand en ressources. Configuration minimale recommandée :
| Ressource | Minimum |
|---|---|
| RAM | 4 GB |
| CPU | 2 vCPUs |
| Disque | 160 GB SSD |
| OS | Ubuntu (ou autre Linux) |
| Port | SSH 22 ouvert |
Étape 1 — Installer Java 8
Nexus nécessite Java 8 pour fonctionner :
# Sur Ubuntu/Debian
apt update
apt install openjdk-8-jdk -y
# Vérifier l'installation
java -version
Étape 2 — Télécharger et Installer Nexus
# Aller dans /opt (répertoire standard pour les applications)
cd /opt
# Télécharger Nexus (vérifier la dernière version sur sonatype.com)
wget https://download.sonatype.com/nexus/3/nexus-3.XX.X-XX-unix.tar.gz
# Extraire l'archive
tar -zxvf nexus-3.XX.X-XX-unix.tar.gz
Après extraction, vous obtenez 2 dossiers dans /opt :
/opt/
├── nexus-3.53.0-01/ ← Runtime et application Nexus
│ ├── bin/ ← Exécutables (nexus start/stop/status)
│ ├── deploy/
│ ├── etc/
│ ├── lib/
│ └── public/
└── sonatype-work/ ← Configuration et données Nexus
└── nexus3/
├── blobs/ ← Vos artifacts stockés
├── clean_cache/
├── log/ ← Logs de l'application
└── tmp/
sonatype-work/contient : configuration Nexus, logs, vos artifacts uploadés, adresses IP qui ont accédé. C'est ce dossier qu'il faut sauvegarder.
Étape 3 — Créer un utilisateur dédié "nexus"
Bonne pratique Linux : ne jamais faire tourner un service en root.
Créer un utilisateur dédié avec les permissions minimales :
# Créer l'utilisateur nexus
adduser nexus
# Donner la propriété des dossiers Nexus à cet utilisateur
chown -R nexus:nexus /opt/nexus-3.53.0-01
chown -R nexus:nexus /opt/sonatype-work
Vérification :
ls -l /opt
# drwxr-xr-x nexus nexus nexus-3.53.0-01
# drwxr-xr-x nexus nexus sonatype-work
Étape 4 — Configurer Nexus pour démarrer avec l'utilisateur nexus
Éditer le fichier de configuration du runner :
vim /opt/nexus-3.53.0-01/bin/nexus.rc
Ajouter ou décommenter :
run_as_user="nexus"
Étape 5 — Démarrer Nexus
Basculer sur l'utilisateur nexus et démarrer le service :
# Changer d'utilisateur
su - nexus
# Démarrer Nexus
/opt/nexus-3.53.0-01/bin/nexus start
Vérifier que Nexus tourne :
ps aux | grep nexus
# nexus 2760 9.0 6346460 736156 pts/0 Sl ... java -Xms2703m ...
Vérifier le port d'écoute :
netstat -tlnp
# tcp 0 0.0.0.0:8081 ← Nexus écoute sur le port 8081
Étape 6 — Ouvrir le port 8081
Sur votre serveur cloud (DigitalOcean, AWS EC2, etc.), ouvrir le port 8081 dans le firewall/Security Group.
# Avec ufw (Ubuntu Firewall)
ufw allow 8081/tcp
ufw status
Étape 7 — Accéder à Nexus depuis le navigateur
Ouvrir : http://<IP-du-serveur>:8081
L'interface Sonatype Nexus Repository OSS s'affiche.
Connexion initiale
Se connecter avec le compte admin par défaut. Le mot de passe initial se trouve dans :
cat /opt/sonatype-work/nexus3/admin.password
Lors de la première connexion, Nexus demandera de changer ce mot de passe.
Structure des dossiers — Résumé
/opt/
├── nexus-3.X.X-XX/ ← NE PAS MODIFIER
│ └── bin/nexus ← Commandes : start, stop, status, restart
└── sonatype-work/ ← SAUVEGARDER CE DOSSIER
└── nexus3/
├── blobs/ ← Artifacts stockés (gros fichiers)
├── log/ ← nexus.log, jvm.log
└── etc/ ← nexus.properties (port, config)
Commandes utiles
# Démarrer Nexus
/opt/nexus-3.X.X-XX/bin/nexus start
# Arrêter Nexus
/opt/nexus-3.X.X-XX/bin/nexus stop
# Statut
/opt/nexus-3.X.X-XX/bin/nexus status
# Voir les logs en temps réel
tail -f /opt/sonatype-work/nexus3/log/nexus.log
Bonnes pratiques
| Pratique | Raison |
|---|---|
Ne pas lancer en root | Limite l'impact d'une compromission |
Créer user nexus dédié | Le service n'a accès qu'à ses propres fichiers |
Sauvegarder sonatype-work/ | Contient tous vos artifacts et la config |
| Utiliser min 4GB RAM | Nexus est une JVM — elle a besoin de mémoire |
| Ouvrir seulement le port 8081 | Pas besoin d'autres ports exposés |
À retenir
- Nexus nécessite Java 8, min 4GB RAM, port 8081
- Deux dossiers :
nexus-3.X.X/(runtime) etsonatype-work/(données — à sauvegarder)- Bonne pratique : créer un utilisateur
nexusdédié, ne jamais lancer en rootchown -R nexus:nexussur les deux dossiers avant de démarrer- Premier accès :
http://IP:8081— mot de passe admin dansadmin.passwordbin/nexus start|stop|statuspour contrôler le service