Librox blog

À deux, c’est mieux

Accueil > Serveur > Docker : présentation de ma Debian de base

Docker : présentation de ma Debian de base

lundi 30 juin 2014

Voici l’image qui me sert de base à toutes les autres. Je vais vous détailler mon Dockerfile. Tous les fichiers nécessaire sont ici :

debian-base

D’abord on configure les sources, on met à jour, on installe quelques petits utilitaires et on met en français.
Puis on installe :

  • Un server ssh pour un accès complet au container si besoin (et un jour ou l’autre, il y aura besoin).
  • Supervisor pour lancer les services au démarrage, les relancer si ils se crashent et voir leur état. Supervisor fournit une chouette petite interface web qui présente l’état des services en temps réel et permet de les stopper ou les redémarrer.

Les sources et màj :

On dit à apt d’être le moins interactif possible puisque l’installation est automatisée. Ensuite on lui dit de ne pas utiliser initrd quand on installe un service. (on utilisera supervisor)

Ici on remplit bêtement le fichier /etc/apt/sources.list avec les miroirs que vous utilisez habituellement. Pensez à changer le Dockerfile pour mettre vos préférés.

Je ne détaille pas le update/upgrade, c’est trivial.

Les utilitaires

Ici j’installe MES utilitaires indispensables à adapter selon vos goûts :

apt-utils et debconf-utils pour éviter des warnings lors des installations de paquets
adduser utilisé par certains paquets pour ajouter un utilisateur
curl et wget pour télécharger en ligne de commande
nano l’éditeur de texte en ligne de commande que j’utilise
bzip2 pour déziper principalement
dialog dépandance de certains paquets
locales librairie que l’on utilise pour mettre en français et configurer le fuseau horaire

On met en français et on choisit le fuseau Paris

Important pour un serveur de mail par exemple (sans doute pour d’autre trucs aussi).

Openssh

On installe :

On configure (modifiez le fichier sshd_config selon vos désirs) :

Faut que je vois si ça c’est indispensable :

Enfin on ajoute sa clé publique pour pouvoir se connecter en ssh en root. Pour ça, copier votre /.ssh/id_rsa.pub dans le dossier courant au préalable.

Supervisor

On installe :

On ajoute les fichiers de conf qui servent à lancer les services :

Et on crée le dossier qui contiendra les logs :

Ports et CMD

On expose les ports utilisés :

Et on positionne la commande de démarrage :

Assez analysé, on passe à l’action :

On construit l’image :

On crée le container et on le lance :

Voilà, si vous voulez interagir avec ce container (qui tourne, on vient de le lancer), il faut connaitre son adresse IP. Utilisez dockerUI (installé grâce à l’article précédent) ou faites :

Accès ssh depuis l’host :

Superviser avec supervisor :
ouvrez l’adresse suivante dans votre navigateur préféré :
http://adresse-IP:9001