Comment utiliser Docker Compose pour empaqueter et déployer des applications PHP multi-conteneurs ?

王林
Libérer: 2023-07-31 12:10:02
original
1330 Les gens l'ont consulté

Comment utiliser Docker Compose pour empaqueter et déployer des applications PHP multi-conteneurs ?

Avec le développement des applications réseau, la création et le déploiement d'applications multi-conteneurs complexes sont devenues de plus en plus courantes. Docker est une plate-forme de conteneurisation populaire qui nous aide à créer et déployer rapidement des applications. Et Docker Compose est un outil permettant de définir et d'exécuter des applications Docker multi-conteneurs.

Cet article expliquera comment utiliser Docker Compose pour empaqueter et déployer une application PHP simple composée de plusieurs conteneurs.

Tout d'abord, nous devons créer un fichier docker-compose.yaml qui définit le conteneur de notre application. Voici un exemple basique :

version: '3'
services:
  webserver:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "80:80"
    depends_on:
      - database
    volumes:
      - ./src:/var/www/html
  database:
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=secret
      - MYSQL_DATABASE=mydatabase
      - MYSQL_USER=myuser
      - MYSQL_PASSWORD=mypassword
Copier après la connexion

Le fichier ci-dessus définit deux services : le serveur Web et la base de données. Le serveur Web est notre conteneur d'application PHP, qui créera une image basée sur Dockerfile et montera le code source de l'application dans le répertoire /var/www/html du conteneur. Il mappera le port local 80 au port 80 du conteneur, afin que nous puissions accéder à l'application en accédant à localhost. Le serveur Web précise également que cela dépend du service de base de données.

Le service de base de données utilise l'image officielle mysql:5.7 et définit certaines variables d'environnement pour configurer les paramètres de la base de données MySQL.

Après avoir préparé le fichier docker-compose.yaml, nous pouvons utiliser la commande suivante pour démarrer notre application :

docker-compose up -d
Copier après la connexion

La commande ci-dessus créera et démarrera tous les conteneurs. Le paramètre -d entraînera l'exécution de Docker Compose en arrière-plan.

Lorsque l'application est démarrée, nous pouvons utiliser la commande suivante pour afficher l'état des conteneurs :

docker-compose ps
Copier après la connexion

Cette commande affichera tous les conteneurs en cours d'exécution et leur statut.

Si nous devons mettre à jour le code ou la configuration de l'application, il suffit de modifier le fichier de code source local. Puisque nous avons monté le code source dans le conteneur, les modifications apportées aux fichiers locaux seront reflétées dans le conteneur en temps réel.

Lorsque nous voulons arrêter une application, nous pouvons utiliser la commande suivante :

docker-compose down
Copier après la connexion

Cette commande arrêtera et supprimera tous les conteneurs.

En plus de la configuration de base, Docker Compose fournit également de nombreuses autres fonctions, telles que la connexion de réseaux de conteneurs, la définition de variables d'environnement, l'expansion, etc.

Pour résumer, utiliser Docker Compose pour le packaging et le déploiement d'applications PHP multi-conteneurs est un moyen rapide et puissant. En définissant un fichier docker-compose.yaml, nous pouvons facilement créer, déployer et faire évoluer des applications complexes. J'espère que cet article vous aidera !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal