Installer GitLab sur Raspberry Pi, accessible de partout (partie 1)

Installer GitLab sur Raspberry Pi, accessible de partout

GitHub c’est bien. Partager ses applications en Open Source, c’est facile, c’est gratuit.

Par contre, certaines réalisations, celles commandées par des clients par exemple, ne peuvent pas être partagées.

Alors GitHub propose de créer des dépôts privés. C’est ce que nous n’allons pas voir.

Ici, nous allons plutôt voir comment installer GitLab, qui fait presque tout comme GitHub, mais sur son propre serveur.

Et pour le coup, le serveur est un Raspberry PI, connecté à la box, aussi bien accessible depuis le réseau local que depuis l’extérieur pour quand on va se promener travailler en extérieur, ou pour travailler à plusieurs sur certains projets.

Dans cette première partie, nous allons activer DHCP et DNS sur le Raspberry.

Préparatifs

J’ai choisi Raspbian. Il faut donc le télécharger puis l’installer.

On en profite pour installer quelques utilitaires :

sudo apt-get install vim htop mlocate mc screen

Voire même mettre à jour le système :

sudo apt-get dist-upgrade

DNS et DHCP

Maintenant que le système est installé et le Raspberry branché sur le réseau, on se connecte en SSH pour activer DNS et DHCP.

Le but : le Raspberry aura un nom qui sera le même sur le réseau et depuis l’extérieur.

Pour l’exemple, appelons-le : git.mon-domaine.com.
En clair, pour la suite, changez ce nom par ce que vous aurez choisi.

Et un détail : vous devez posséder le nom de domaine (ici mon-domaine.com).

Installer et configurer dnsmasq

dnsmasq est à la fois un serveur DNS et DHCP, très simple à configurer.

Pour l’installer :

sudo apt-get install dnsmasq

Pour le configurer :

sudo vim /etc/dnsmasq.conf

Puis changer le contenu pour avoir :

# dns
domain-needed
bogus-priv
no-resolv
# Il faut changer ces deux lignes en indiquant les adresses IP
# des DNS de votre FAI. Ces adresses sont normalement disponibles
# sur la box.
server=1.2.3.4
server=2.3.4.5

cache-size=4096

# dhcp
local=/home/
expand-hosts
# changez bien cette ligne :
domain=mon-domaine.com
# le range DHCP a attribuer + le masque + 14 jours de lease
dhcp-range=192.168.1.100,192.168.1.199,255.255.255.0,14d
# la route vers le routeur (certainement l'adresse IP de la box)
dhcp-option=option:router,192.168.1.1
dhcp-option=252,"\n"

# logging
log-facility=/var/log/dnsmasq.log
log-async
log-dhcp

read-ethers
# avec cette ligne, le DHCP de dnsmasq est prioritaire sur celui de la box
dhcp-authoritative

Pensez bien à changer le contenu de domain.

Redémarrez dnsmasq :

sudo /etc/init.d/dnsmasq restart

Ajouter les noms d’hôtes

Maintenant que dnsmasq est en place, il reste à indiquer les noms d’hôtes, c’est-à-dire donner un nom aux équipements du réseau.

En l’occurrence, le nom qui nous intéresse est celui du Raspberry, ici git (de git.mon-domaine.com).

Ils doivent être listés dans /etc/hosts.

sudo vim /etc/hosts

Ajouter :

 192.168.1.10 git

192.168.1.10 est l’adresse IP du Raspberry, celle que vous utilisez pour vous connecter en SSH.

Par exemple, une fois HTTP démarré sur le Raspberry, il sera accessible à l’adresse : http://git ou encore http://git.mon-domaine.com depuis le réseau local.

Il est donc possible d’ajouter une ligne par adresse IP que vous souhaitez nommer, votre ordinateur de travail par exemple.
Il est aussi possible de donner plusieurs noms (alias) au même équipement, en les séparant par des espaces.

Adresses statiques fournies par DHCP

Il est possible de donner des adresses IP statiques allouées par DHCP aux différents équipements du réseau, ce qui est nécessaire pour leur donner un nom d’hôte.

Pour cela, éditez /etc/ethers :

sudo vim /etc/ethers

Ajoutez l’adresse MAC de l’équipement pour le faire correspondre à l’adresse IP souhaitée (qui doit se trouver hors de la plage allouée, ici 192.168.1.100,192.168.1.199).

 aa:bb:cc:dd:ee:ff 192.168.1.18

Le mot de la fin

Au terme de cette première partie, nous n’avons pas encore installé GitLab.

En fait, nous avons vu comment transformer un Raspberry PI en serveur DNS et DHCP, prêt à accueillir n’importe quoi. En l’occurrence, ce sera GitLab, la semaine prochaine.

L'illustration de cet article est une image sous licence Domaine public par Shonagon

Cet article vous a été utile ? Partage it !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Si vous le souhaitez, renseignez le champ 'Nom' de cette façon : 'VotreNom@VotreMotClef' pour obtenir une ancre optimisée pour les moteurs de recherche.