Titre : Accélérer le déploiement d'applications PHP à l'aide de Docker Compose, Nginx et MariaDB
Introduction : Avec l'application généralisée du cloud computing et de la technologie des conteneurs, de plus en plus de développeurs s'intéressent à la manière de déployer et de faire évoluer rapidement les programmes d'applications. . Dans le développement PHP, l'utilisation de Docker Compose, Nginx et MariaDB peut considérablement accélérer le déploiement d'applications. Cet article expliquera comment utiliser ces outils pour créer et gérer rapidement l'environnement de développement d'applications PHP.
1. Introduction à Docker Compose
Docker Compose est un outil permettant de définir et d'exécuter des applications Docker multi-conteneurs. Avec un fichier de configuration pour gérer les paramètres de tous les conteneurs, nous pouvons utiliser Docker Compose pour définir, exécuter et arrêter l'ensemble de l'application en même temps. L'utilisation de Docker Compose simplifie considérablement le processus de déploiement et fournit des capacités d'orchestration et de mise à l'échelle des conteneurs.
2. Nginx en tant que serveur Web
Nginx est un serveur Web open source et un serveur proxy inverse hautes performances. Il peut gérer un grand nombre de connexions simultanées tout en fournissant des fonctionnalités telles que l'équilibrage de charge, la mise à l'échelle de la capacité et la mise en cache du contenu statique. Dans les applications PHP, l'utilisation de Nginx comme serveur Web peut améliorer les performances et les capacités de traitement simultané de l'application.
Voici un exemple simple de configuration Docker Compose utilisant Nginx avec PHP-FPM (PHP FastCGI Process Manager) :
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html php: image: php:latest volumes: - ./code:/var/www/html
Dans la configuration ci-dessus, nous avons défini deux services : web et php. Le service Web utilise la mise en miroir Nginx et mappe le port 80 du conteneur au port 80 de l'hôte. En même temps, nous stockons le fichier de configuration Nginx nginx.conf et le code PHP dans le répertoire spécifié de la machine hôte. Le service php utilise l'image PHP et monte le répertoire de code dans le répertoire /var/www/html du conteneur.
3. Utilisez MariaDB comme base de données
MariaDB est un système de gestion de base de données relationnelle populaire. Il s'agit d'une branche de MySQL et offre des performances élevées, une haute disponibilité et des fonctions puissantes. Dans les applications PHP, l'utilisation de MariaDB comme base de données peut améliorer la vitesse d'accès aux données et les capacités de gestion des données.
Ce qui suit est un exemple simple de configuration Docker Compose, utilisant MariaDB avec Nginx et PHP-FPM mentionnés ci-dessus :
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html php: image: php:latest volumes: - ./code:/var/www/html db: image: mariadb:latest environment: - MYSQL_ROOT_PASSWORD=yourpassword volumes: - ./data:/var/lib/mysql
Dans la configuration ci-dessus, nous avons ajouté un service de base de données, utilisé le miroir MariaDB et configuré l'utilisateur root. mot de passe. En même temps, nous stockons les données de la base de données dans le répertoire /var/lib/mysql du conteneur.
4. Utilisez Docker Compose pour le déploiement et la gestion
Après avoir la configuration Docker Compose ci-dessus, nous pouvons utiliser les commandes suivantes pour déployer et gérer les applications PHP en un seul clic :
Construire et démarrer le conteneur : Dans le package contenant docker L'exécution de la commande suivante dans le répertoire du fichier -compose.yml construira et démarrera tous les conteneurs.
docker-compose up -d
Arrêter les conteneurs : l'exécution de la commande suivante arrêtera tous les conteneurs.
docker-compose down
Service d'extension : Si vous avez besoin d'étendre le service web ou php, ajustez simplement le nombre de copies du service correspondant dans le fichier docker-compose.yml.
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html scale: 3 php: image: php:latest volumes: - ./code:/var/www/html scale: 3
Ensuite, exécutez la commande suivante pour augmenter la capacité.
docker-compose up -d --scale web=3 --scale php=3
En utilisant Docker Compose, Nginx et MariaDB, nous pouvons rapidement créer et gérer l'environnement de développement d'applications PHP, et pouvons facilement déployer et développer. Cette approche accélère non seulement le déploiement des applications, mais offre également de meilleures performances et évolutivité.
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!