Maison  >  Article  >  développement back-end  >  Gestion des données pour les applications PHP avec Docker Compose, Nginx et MariaDB

Gestion des données pour les applications PHP avec Docker Compose, Nginx et MariaDB

王林
王林original
2023-10-12 08:01:45648parcourir

通过Docker Compose、Nginx和MariaDB实现PHP应用程序的数据管理

Gestion des données des applications PHP via Docker Compose, Nginx et MariaDB

Introduction : Dans le développement logiciel actuel, la conteneurisation est devenue une technologie très populaire et Docker, en tant que leader, propose des solutions de conteneurisation pratiques et fiables. Dans cet article, nous explorerons comment implémenter la gestion des données pour les applications PHP à l'aide de Docker Compose, Nginx et MariaDB.

1. Qu'est-ce que Docker Compose ?
Docker Compose est un outil permettant de définir et d'exécuter plusieurs conteneurs Docker. Il utilise des fichiers YAML pour configurer les services de l'application. En utilisant Docker Compose, nous pouvons facilement démarrer, arrêter et gérer plusieurs conteneurs, et nous pouvons spécifier des paramètres et des configurations pour chaque conteneur.

2. Configurez les applications PHP à l'aide de Docker Compose et Nginx

  1. Installez Docker et Docker Compose
    Tout d'abord, nous devons installer Docker et Docker Compose. Les étapes d'installation détaillées peuvent être trouvées sur le site Web officiel de Docker.
  2. Créer un fichier Docker Compose
    Créez un fichier appelé docker-compose.yml dans le répertoire racine du projet et ajoutez le contenu suivant :

    version: '3'
    services:
      nginx:
        image: nginx:latest
        ports:
          - 80:80
        volumes:
          - ./nginx.conf:/etc/nginx/nginx.conf
          - ./www:/var/www/html
      php:
        image: php:7.4-fpm
        volumes:
          - ./www:/var/www/html
      mariadb:
        image: mariadb:latest
        restart: always
        environment:
          MYSQL_ROOT_PASSWORD: your_root_password
          MYSQL_DATABASE: your_database_name
          MYSQL_USER: your_mysql_username
          MYSQL_PASSWORD: your_mysql_password

    Ce fichier de configuration définit trois services : Nginx, PHP et MariaDB. Le service Nginx utilise l'image nginx:latest et mappe le port 80 de l'hôte au port 80 du conteneur. Le service PHP utilise l'image php:7.4-fpm pour mapper le répertoire www de l'hôte au répertoire /var/www/html du conteneur via un volume partagé. Le service MariaDB utilise l'image mariadb:latest et définit le mot de passe root de la base de données, ainsi que le nom de la base de données, le nom d'utilisateur et le mot de passe. Veuillez modifier ces paramètres en fonction des besoins réels.

  3. Configurer Nginx
    Créez un fichier nommé nginx.conf dans le répertoire racine du projet et ajoutez le contenu suivant :

    server {
      listen 80;
      server_name localhost;
      root /var/www/html;
      index index.php;
    
      location / {
        try_files $uri $uri/ /index.php?$query_string;
      }
    
      location ~ .php$ {
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
      }
    }

    Ce fichier de configuration définit la configuration de base de Nginx et redirige toutes les requêtes vers les fichiers php à réaliser. analyse des applications PHP.

  4. Démarrer le conteneur Docker
    Exécutez la commande suivante pour démarrer le conteneur Docker :

    docker-compose up -d

    Cette commande démarrera tous les services définis dans le fichier de configuration et les exécutera en mode arrière-plan.

  5. Connectez-vous à MariaDB
    Vous pouvez utiliser n'importe quel client MySQL pour vous connecter à la base de données MariaDB, en utilisant le nom d'utilisateur et le mot de passe précédemment définis dans le fichier de configuration.

3. Conclusion
En utilisant Docker Compose, Nginx et MariaDB, nous pouvons facilement configurer et gérer les données des applications PHP. Cette solution conteneurisée permet non seulement un déploiement et une expansion pratiques, mais garantit également la sécurité et la stabilité des données. J'espère que cet article sera utile à votre étude et à votre pratique.

Pour des exemples de code et la structure du projet, veuillez vous référer à : https://github.com/example/docker-compose-php-n...

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!

Déclaration:
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