Avec l'essor du cloud computing et des microservices, la conteneurisation est devenue un maillon très important du développement logiciel moderne. En tant que représentant des systèmes open source, Linux est également devenu l'un des systèmes privilégiés pour le déploiement conteneurisé. Cet article explique comment utiliser Linux pour le déploiement de conteneurs.
1. Installer Docker
Docker est actuellement l'une des solutions de conteneurisation les plus populaires et peut fonctionner sur le système d'exploitation Linux. Avant d'installer Docker, vous devez désinstaller la version existante de Docker et exécuter la commande suivante :
sudo apt-get remove docker docker-engine docker.io containersd runc
Ensuite, Installez Docker :
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containersd.io
Une fois l'installation terminée, exécutez la commande suivante pour vérifier si l'installation a réussi :
sudo docker run hello-world
Si "Bonjour de Docker !" est affiché, l'installation est réussie.
2. Créez une image Docker
Pour utiliser Docker pour le déploiement de conteneurs, vous devez d'abord créer une image. Une image est un instantané des fichiers et de la configuration qu'un conteneur doit exécuter. Si vous devez déployer une application, vous devez d'abord écrire un fichier Dockerfile, qui contient des instructions pour créer l'image.
Ce qui suit est un exemple simple de Dockerfile qui peut être utilisé pour créer une image exécutant Apache :
FROM ubuntu:latest
RUN apt-get update && apt- get install -y apache2
EXPOSE 80
CMD ["apache2ctl", "-D", "FOREGROUND"]
Parmi eux, l'instruction "FROM" précise l'image de base , qui est utilisé ici Vous avez la dernière version d'Ubuntu. Utilisez ensuite la commande "RUN" pour installer Apache et spécifiez le port sur lequel le conteneur écoute via la commande "EXPOSE". Enfin, utilisez la commande "CMD" pour spécifier la commande de démarrage de l'image.
Après avoir le Dockerfile, exécutez la commande suivante pour construire l'image :
sudo docker build -t my-apache .
Parmi eux , "-t "Le paramètre spécifie le nom et le numéro de version de l'image, et "." indique le répertoire où se trouve le fichier Dockerfile.
3. Exécutez le conteneur Docker
Après avoir créé l'image, vous pouvez utiliser Docker pour exécuter le conteneur. Exécutez la commande suivante :
sudo docker run -d -p 8080:80 my-apache
Parmi eux, le paramètre "-d" signifie exécuter le conteneur en mode arrière-plan , "-p" Le paramètre "spécifie le mappage entre le port hôte et le port conteneur. "my-apache" est le nom de l'image créée précédemment.
Après une exécution réussie, vous pouvez saisir "http://localhost:8080" dans le navigateur pour accéder à Apache.
4. Utiliser Docker Compose
Docker Compose est un outil permettant de définir et d'exécuter plusieurs conteneurs Docker. Vous pouvez l'utiliser pour créer rapidement plusieurs conteneurs et configurer la communication et les dépendances entre eux.
Ce qui suit est un exemple simple de docker-compose.yml :
version : "3"
services:
db:
image: mysql environment: MYSQL_ROOT_PASSWORD: password
web:
build: . ports: - "8080:80" depends_on: - db
Parmi eux, le service "web" fait référence à l'image créée précédemment et écoute le port 8080. Le service "db" utilise l'image officielle de MySQL et définit le mot de passe root. Les deux services ont une dépendance spécifiée via le paramètre "depends_on".
Exécutez la commande suivante pour démarrer le service :
sudo docker-compose up -d
Maintenant, vous pouvez saisir "http:// / localhost:8080" pour accéder à Apache, et le service MySQL est également opérationnel.
Summary
Cet article explique comment utiliser Linux pour le déploiement de conteneurs, notamment l'installation de Docker, la création d'images, l'exécution de conteneurs et l'utilisation de Docker Compose pour créer des applications multi-conteneurs. Ces technologies sont très importantes pour le développement de logiciels modernes, et j'espère que cet article pourra aider les lecteurs à mieux les appliquer dans des travaux pratiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!