On ne va pas se mentir, docker est à ce jour une solution très pratique pour lancer des environnements de tests ou même de prod en quelques commandes !
Personnellement, j’en suis à un point où je peux aller me chercher un petit VPS sur ovh, le premier prix, mettre docker et lancer une application dessus basée sur docker.
Du coup je fais une petite note, un petit « tuto » pour expliquer la démarche qui m’est personnelle et qui pourra peut-être aider des personnes qui débutent ou qui veulent simplement ne pas se prendre la tête.
1 – Installation de Centos 7 et configuration de l’environnement
Je pars du principe que toi, cher lecteur, tu ne te prends pas la tête tout comme moi et que tu prends un serveur chez un « random » hébergeur qui te propose d’installer une distrib par défaut en 1 clic. Personnellement, ça sera un VPS OVH, centos 7 étant donc la distrib que j’ai choisi.
Petite liste des étapes primordiales :
- Création du user « quivabien »
Je créée toujours un user à mon nom, pas de root, jamais… JAMAIS 🙂
1 |
adduser blogueurman |
- Ajouter le user dans la liste sudoers
(Celle qui permet de faire « sudo » tu sais, et le tout sans à retaper le mot de passe)
1 |
sudo vim /etc/sudoers |
Et poser la ligne correspondante au user :
1 |
blogueurman ALL=(ALL) NOPASSWD:ALL |
- SSH KEY, oui toujours 🙂
Comme ça me gonfle de noter mes mots de passe et surtout de me les rappeler, pire de les taper constamment, petit tour dans les clefs SSH (on ajoute notre clef SSH dans le fichier qui va bien), si vous ne savez pas générer une clef SSH, RDV ici.
1 |
sudo vim ~/.ssh/authorized_keys |
Et on colle la clef SSH dedans 🙂
- Sécuriser la config de SSH
Je change toujours les confs par défaut, le port par exemple, ensuite je change les users autorisés à se connecter et également je dis à root qu’il ne pourra pas non plus se connecter en SSH.
1 |
sudo vim /etc/ssh/sshd_config |
Vous trouverez la ligne « port » , endroit à changer si voulu.
Puis :
– PermitRootLogin no
– AllowUsers blogueurman
Et on redémarre le tout :
1 |
sudo /bin/systemctl restart sshd.service |
2. Installation de docker à présent
LE plus dur… non je plaisante !
On commence par checker que tous les paquets sur la distrib sont à jour :
1 |
sudo yum update |
On lance le script « qui fait tout »
1 |
curl -sSL https://get.docker.com/ | sh |
On lance docker parce que comme il est tout neuf, autant jouer avec.
1 |
sudo service docker start |
Mettre docker au démarrage du serveur, ça aide… surtout quand on utilise docker en environnement de prod :
1 |
sudo chkconfig docker on |
Et on teste quand même que tout fonctionne :
1 |
sudo docker run hello-world |
Ce qui devrait afficher :
1 |
Unable to find image 'hello-world:latest' locally latest: Pulling from hello-world a8219747be10: Pull complete 91c95931e552: Already exists hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security. Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd1.7.1cf5daeb82aab55838d Status: Downloaded newer image for hello-world:latest Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (Assuming it was not already locally available.) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash For more examples and ideas, visit: http://docs.docker.com/userguide/ |
Et ceci achève donc la partie « petite configuration » du serveur 🙂
Reste plus qu’à utiliser ! Alors justement prochains petits tutos de ma part : le start guide de docker !
A bientôt 🙂