La plupart des professionnels de l'informatique qui travaillent sur Docker sont bloqués à un moment où il s'agit de la taille des conteneurs Docker. Parfois, la taille des images docker atteint des Go, ce qui consomme une grande quantité de stockage du système et rend difficile la mise à niveau et le démarrage du conteneur. Heureusement, nous avons un outil Open source gratuit dans le système Linux/Mac qui nous permet de sécuriser et de minimiser la taille des conteneurs Docker jusqu'à 30 fois.
Pourquoi utiliser DockerSlim ?
- Pour minimiser la taille du conteneur, ce qui réduit l'utilisation du stockage.
- Pour créer des conteneurs légers pour un démarrage plus rapide
- Réduire les bugs
Dans cet article, nous verrons comment installer DockerSlim et l'utiliser pour minimiser le conteneur docker.
Installation
Dockerslim est actuellement pris en charge sur les systèmes Linux et UNIX, y compris Mac. Les fichiers binaires dockerslim peuvent être téléchargés depuis DockerSlim GitHub Repository. Accédez au lien du référentiel GitHub indiqué ci-dessous, accédez à l'installation et téléchargez les derniers fichiers binaires pour votre système.
Référentiel DockerSlim GitHub :https://github.com/docker-slim/docker-slim
Vous pouvez également utiliser la commande wget pour télécharger les derniers fichiers binaires DockerSlim en tant que :
$ wget https://downloads.dockerslim.com/releases/1.36.1/dist_linux.tar.gz
Pour extraire les fichiers téléchargés, exécutez la commande suivante.
$ tar -zvxf dist_linux.tar.gz
Une fois le fichier extrait, déplacez les fichiers binaires vers le répertoire /usr/local/bin en tant que :
$ sudo mv dist_linux/* /usr/local/bin
Pour vérifier l'installation de DockerSlim, exécutez la commande suivante.
$ which docker-slim
Sortie :
Exécutez le docker docker-slim avec l'aide de l'option pour des commandes et des guides utiles.
$ docker-slim help
Sortie :
DockerSlim fournit une ligne de commande pilotée par menu très utile. Pour essayer les commandes disponibles, exécutez docker-slim sans aucun argument. Dans le shell DockerSlim, tapez help pour obtenir le menu d'aide dans l'invite interactive.
Sortie :
Les commandes de base incluent les éléments suivants :
Quitter => Quitter le shell DockerSlim
Xray => Montre ce qu'il y a à l'intérieur de l'image du conteneur et inverse l'ingénierie de son Dockerfile
Version => Afficher les informations de version de DockerSlim et de Docker
Lint => Analyse les instructions de conteneur dans les Dockerfiles
Préparer un contenant pour mincir
Pour créer un conteneur Docker fin, nous devons disposer d'une image Docker disponible dans le système local. Dans cet article, j'ai sélectionné une image httpd. Vous pouvez sélectionner l'image selon vos besoins. Utilisez la syntaxe suivante pour extraire les images docker du dockerhub. N'oubliez pas que vous devez avoir installé le moteur Docker et ses dépendances sur votre système
Syntaxe :
$ docker pull <image name>
$ docker pull httpd
Sortie :
Vérification de la sortie du conteneur
Une fois l'image extraite, exécutez-la en tant que conteneur et vérifiez la sortie. Dans cet exemple, j'ai exposé le port 80 du conteneur docker httpd et j'ai accédé à la page apache par défaut à l'aide du navigateur.
$ docker run -d --name apache -p 80:80 httpd
Sortie :
De plus, pour vérifier la taille des images docker, exécutez la commande suivante
$ docker images
Sortie :
Utilisation de DockerSlim pour créer l'image
L'image Docker a été extraite et nous avons vérifié que le conteneur fonctionne correctement. Nous allons maintenant utiliser DockerSlim pour créer des images optimisées. Utilisez la syntaxe suivante pour créer des images Docker réduites.
$ docker-slim build --target <image name>
Exemple :
$ docker-slim build --target httpd
Sortie :
La sortie montre que la taille de l'image Docker a été réduite de 138 Mo à 8,1 Mo, ce qui est réduit de 16,3 fois par rapport à l'image d'origine.
Vérification de l'image finale
Pour vérifier la taille de l'image finale, exécutez la commande suivante.
$ docker images
Sortie :
Exécuter le conteneur à partir de l'image de build DockerSlim
Enfin, nous allons créer un conteneur à partir de l'image optimisée et surveiller la sortie. Comme j'ai utilisé des images docker httpd pour minimiser, je vais exécuter un conteneur httpd à partir de la dernière image. Vous pouvez sélectionner vos images en conséquence.
Syntaxe :
$ docker run -d --name <name of the container > -p <host port : container port> <image name>
Exemple
$ docker run -d --name apache -p 80:80 httpd.slim
Où,
httpd.slim est l'image docker httpd optimisée
Sortie :
Vous pouvez constater que le conteneur est en place avec une image optimisée. Parcourons le conteneur dans le navigateur et trouvons la sortie.
Vous pouvez constater que le conteneur docker httpd fonctionne correctement avec l'image Docker réduite.
Conclusion
Dans cet article, nous avons appris comment installer DockerSlim dans le système Linux et comment il peut être utilisé pour optimiser et sécuriser les conteneurs Docker.