Maison > développement back-end > tutoriel php > Le guide ultime pour déployer des applications PHP dans le cloud

Le guide ultime pour déployer des applications PHP dans le cloud

Lisa Kudrow
Libérer: 2025-02-12 09:08:18
original
754 Les gens l'ont consulté

Le guide ultime pour déployer des applications PHP dans le cloud

Table des matières

  • Introduction aux serveurs cloud
  • Heroku
  • Faire un petit changement
  • Base de données, travaux de mise en cache et cron
  • Google Cloud
  • Base de données, travaux de mise en cache et cron
  • IBM Bluemix
  • Base de données, travaux de mise en cache et cron
  • Microsoft Azure
  • Base de données, travaux de mise en cache et cron
  • Services Web Amazon
  • Base de données, mise en cache et travaux cron
  • Laravel Forge
  • Envoyé
  • Déploieur
  • Conclusion
  • Commentaires

Cet article a été publié pour la première fois sur le blog Auth0 et republié ici avec leur permission.

TL; DR: Il y a un mantra populaire parmi les développeurs qui va comme celui-ci écrire, tester et déploier . Dans ce tutoriel, je vais vous montrer comment déployer vos applications PHP sur différentes plates-formes de serveurs cloud telles que Google Cloud, Microsoft Azure, Heroku, IBM Bluemix et autres.


Les plats clés

  • Déployer des applications PHP dans le cloud offre l'évolutivité, la rentabilité, les performances améliorées et une meilleure fiabilité, ce qui en fait une option avantageuse pour les entreprises de toutes tailles.
  • Des plateformes comme Heroku, Google Cloud, IBM Bluemix, Microsoft Azure et Amazon Web Services fournissent des environnements divers pour héberger des applications PHP, chacune avec des fonctionnalités spécifiques qui répondent à différents besoins de développement.
  • Les étapes essentielles pour le déploiement sur Heroku incluent la configuration d'un compte Heroku, la création d'un fichier .env, la configuration des paramètres AUTH0 et l'utilisation d'un ProcFile pour déclarer les types de processus pour le démarrage de l'application.
  • Google Cloud offre un environnement flexible pour les applications PHP, permettant l'utilisation de diverses extensions PHP et scripts de déploiement, qui peuvent être gérés via l'outil de ligne de commande GCLOUD.
  • IBM BlueMix utilise Cloud Foundry pour le déploiement des applications, permettant une configuration, une mise à l'échelle et une gestion faciles des applications avec des fonctionnalités telles que la détection automatique de construction et la gestion des variables d'environnement via Bluemix UI.
  • Les services Web Microsoft Azure et Amazon fournissent des outils complets pour le déploiement, l'intégration de la base de données, la mise en cache et l'exécution de travaux CRON, prenant en charge la personnalisation et l'évolutivité approfondies pour les applications PHP.

Introduction aux serveurs cloud

Les serveurs cloud sont essentiellement des serveurs virtuels qui s'exécutent dans un environnement de cloud computing. Il y a divers avantages à l'hébergement et au déploiement de vos applications dans le cloud. Ils sont:

  • économiquement efficace.
  • Vous avez la liberté de modifier le logiciel du serveur à vos besoins.
  • Les serveurs de nuages ​​évoluent très bien.
  • stabilité et sécurité.

En fait, de nombreuses entreprises ont déplacé leur infrastructure vers le cloud afin de réduire les coûts et la complexité. C'est une excellente option pour les petites entreprises de taille moyenne et à l'échelle d'entreprise. Si vous écrivez beaucoup de tutoriels et faites des POC (preuves de concepts) comme moi, c'est aussi un excellent choix pour vous!

Une application PHP générique implique la lampe commune (Linux, Apache, MySQL et PHP) pile.

  • Linux: le système d'exploitation qui exécute les autres packages logiciels.
  • Apache: le serveur Web qui exécute le code PHP. Un logiciel alternatif populaire est nginx .
  • MySQL: la base de données. Un logiciel alternatif populaire est PostgreSQL.
  • PHP: le langage côté serveur pour la création de l'application.

Pour un cours intensif sur lampe / mamp / wamp, voir cette ressource premium.

Couvrons maintenant comment déployer des applications PHP sur plusieurs plates-formes de serveur cloud.

HEROKU

Heroku est une plate-forme cloud qui vous aide à déployer et à héberger vos applications de la manière moderne. Il fait tout le lourdeur pour vous. Voyons rapidement comment déployer et maintenir une application PHP sur Heroku.

Le guide ultime pour déployer des applications PHP dans le cloud PHP HEROKU Architecture

Si vous n'avez pas de compte, allez-y et créez-en un sur Heroku.com. Ensuite, allez-y et installez la CLI Heroku. Une fois que vous avez installé, clonez cette simple application php starwars.

Heroku exécute votre application PHP dans un dyno, un conteneur intelligent qui fournit une pile moderne avec votre choix de serveur Web (Apache ou Nginx) et d'exécution (PHP ou HHVM).

Assurez-vous de suivre ces étapes ci-dessous:

  • Créer un fichier .env à partir de .env.example.
  • Vous devez avoir un compte avec Auth0.
  • Accédez à votre tableau de bord Auth0 et cliquez sur le bouton «Créer un nouveau client».
  • Nommez votre nouvelle application et sélectionnez «Applications Web régulières».
  • Dans les paramètres de votre nouvelle application client Auth0, ajoutez http: // localhost: 8000 aux URL de rappel autorisé.
  • Copiez votre ID client , Client Secret , Domain et URL de rappel . Assurez-vous de les attribuer aux bonnes variables dans votre fichier .env.

Nous avons un fichier composer.json qui contient la liste des packages dont l'application a besoin. Allez-y et exécutez le compositeur Installer sur votre machine locale pour installer ces packages. Vous ne connaissez pas le compositeur? Cette vidéo pourrait aider.

Allez-y et exécutez l'application. L'application doit s'exécuter comme:

Le guide ultime pour déployer des applications PHP dans le cloud Page de destination

Le guide ultime pour déployer des applications PHP dans le cloud connecté à l'utilisateur

génial! Notre application fonctionne localement. Il est temps de déployer! La première chose que nous allons faire est d'ajouter un ProCFile au répertoire racine de notre application.

Créez un nouveau fichier appelé ProCFile sans aucune extension de fichier et ajoutez ceci:

web: vendor/bin/heroku-php-apache2
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Un ProCFile est un fichier texte dans le répertoire racine de votre application qui définit les types de processus et déclare explicitement quelle commande doit être exécutée pour démarrer votre application sur Heroku.

Si vous êtes intéressé à utiliser nginx comme serveur Web, alors le contenu de votre procFile serait:

web: vendor/bin/heroku-php-nginx
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Maintenant que vous avez ajouté le ProCfile, allez-y et téléchargez le projet sur GitHub ou Bitbucket. Le mien est Starwazapp.

Rendez-vous sur Dashboard.heroku.com/apps et créez une nouvelle application comme SO:

Le guide ultime pour déployer des applications PHP dans le cloud Créez une nouvelle application à partir du tableau de bord

Donnez-lui un nom comme:

Le guide ultime pour déployer des applications PHP dans le cloud Donner un nom à application

Choisissez une méthode de déploiement. Dans notre cas, nous utiliserons GitHub comme tel:

Le guide ultime pour déployer des applications PHP dans le cloud Connectez-vous à github

La raison du choix de GitHub est de rendre le processus de développement et de maintenance très fluide. Les développeurs peuvent travailler sur de nouvelles fonctionnalités en utilisant le flux de travail GIT.

Maintenant, tapez le nom du dépôt dans la zone encerclée et cliquez sur Rechercher. Heroku recherchera votre dépôt sous votre compte GitHub et l'affichera comme

Le guide ultime pour déployer des applications PHP dans le cloud Recherche de repo

Cliquez sur Connexion comme

Le guide ultime pour déployer des applications PHP dans le cloud Cliquez sur le bouton Connexion

Heroku reliera le repo comme SO

Le guide ultime pour déployer des applications PHP dans le cloud Projet connecté

Faites défiler un peu vers le bas. C'est la partie intéressante. Heroku vous permet d'activer les déploiements automatiques avec la poussée d'un bouton. Il vous donne également une option pour attendre que votre processus d'intégration continue passe avant le déploiement en production. Dans une application réelle, vous aurez une suite de tests pour votre base de code. Un code des développeurs s'exécute contre la suite de tests. S'il passe, le code sera poussé à la production.

Le guide ultime pour déployer des applications PHP dans le cloud

Cliquez pour activer les déploiements automatiques. Nous n'avons pas de service CI, nous n'avons donc pas besoin d'activer cette option. Maintenant, déploiement de la succursale principale.

Remarque: vous pouvez avoir d'autres branches et spécifier la branche que vous souhaitez pour la production. Dans notre cas, la branche principale est la branche de production.

Cliquez sur la succursale de déploiement. Heroku scannera votre fichier composer.lock, installera les packages nécessaires et déploiera!

Le guide ultime pour déployer des applications PHP dans le cloud Déployer enfin

Cliquez sur le bouton Affichage pour consulter votre application.

Le guide ultime pour déployer des applications PHP dans le cloud Erreur 500

Ooops! Nous connaissons une erreur de 500. AHA, nous n'avons pas encore défini de variables d'environnement. Localement, nous avions un fichier .env. Sur Heroku, il n'y a pas de fichier .env, mais il existe un moyen de définir des variables d'environnement. Accédez aux paramètres de votre tableau de bord et ajoutez-les comme variables de configuration comme SO:

Le guide ultime pour déployer des applications PHP dans le cloud

Oh, encore une chose! La nouvelle URL de rappel dans mon cas est http://starwazapp.herokuapp.com. Assurez-vous d'ajouter votre nouvelle URL de rappel à la URL de rappel autorisée dans votre tableau de bord AUTH0.

Votre application devrait être en direct et fonctionner maintenant!

Le guide ultime pour déployer des applications PHP dans le cloud application live

faire un petit changement

Faisons un petit changement dans notre application et voyons à quel point il le déplace sans effort en production.

ouvrir index.php et modifier le contenu de la balise

de Heard que vous ne voulez pas migrer vers PHP 7? Oosez-nous! à Star Wars - The Awakening!. Engager et pousser à votre branche principale. Maintenant, accédez à l'onglet Activité de votre tableau de bord Heroku et remarquez la construction. Recharger votre application et vous verrez la différence.

Le guide ultime pour déployer des applications PHP dans le cloud build a réussi

Le guide ultime pour déployer des applications PHP dans le cloud nouvelle version

Base de données, mise en cache et travail Cron

Parlons rapidement de la façon de gérer la base de données, la mise en cache et les travaux CRON. Sur Heroku, vous pouvez utiliser ClearDB et Postgres avec PHP. Ajoutez ClearDB à votre application comme:

web: vendor/bin/heroku-php-apache2
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Cette commande propose une nouvelle base de données ClearDB et renvoie l'URL que l'application utilisera pour y accéder. Tout ce que vous avez à faire est de l'ajouter à votre application en tant que variable d'environnement et de l'analyser dans la configuration de votre application comme SO:

ClearDB est une base de données puissante et tolérante aux défauts en tant que service dans le cloud pour vos applications alimentées par MySQL.

web: vendor/bin/heroku-php-nginx
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

en utilisant mysqli

Vous pouvez ajuster cela en fonction du style APD. Ajoutez Postgres à votre application comme ça:

heroku addons:create cleardb:ignite
Copier après la connexion
Copier après la connexion

Rendez-vous vers les addons, et vous verrez d'autres types de bases de données que vous pouvez utiliser avec votre application PHP.

Heroku fournit un tableau d'addons pour la mise en cache, de Memcache, à Fastly, à IronCache et à d'autres. Vous pouvez consulter comment utiliser Memcache avec PHP sur Heroku ici.

Enfin, vous pouvez utiliser le planificateur Heroku pour exécuter des travaux sur votre application à des intervalles de temps planifiés.

Google Cloud

La plate-forme Google Cloud est une plate-forme cloud géante et fiable que de nombreuses entreprises du monde entier ont adoptée pour déployer et héberger leurs applications. Vos applications fonctionneront sur la même infrastructure qui alimente tous les produits de Google. De quelle autre forme de confiance avez-vous besoin pour vous assurer que votre application va évoluer suffisamment pour servir facilement vos milliers et millions d'utilisateurs?

Google Cloud propose différentes options pour héberger les applications PHP. La plate-forme propose un moteur d'applications (entièrement géré), un moteur de calcul (VMS évolutifs) et un moteur à conteneurs (grappes Kubernetes).

Dans notre cas, nous utiliserons App Engine. Il résume l'infrastructure. Passons au déploiement de notre célèbre application Star Wars sur Google App Engine.

Lorsque vous utilisez Google App Engine, vous pouvez choisir l'environnement standard ou flexible. Ce dernier, comme le nom l'indique, vous permet d'installer n'importe quelle extension PHP qui fonctionne sur Debian Linux, dispose d'un serveur Web Nginx configurable, d'un système de fichiers écrits, de dernières versions PHP et vous permet d'exécuter des scripts de déploiement à l'aide de Composer.json.

Nous utiliserons l'environnement flexible. Allez-y et créez un nouveau projet. Cliquez sur Créer, donnez un nom au projet, sélectionnez la région dans laquelle vous souhaitez servir votre application et activez la facturation.

Remarque: vous ne serez pas facturé sans votre permission.

Maintenant, téléchargez le SDK Google et installez les outils Google Cloud.

Le guide ultime pour déployer des applications PHP dans le cloud Installation de Google Sdk

Le guide ultime pour déployer des applications PHP dans le cloud exécuter gcloud

Allez-y et créez un fichier app.yaml dans la racine de notre projet comme SO:

app.yaml

web: vendor/bin/heroku-php-apache2
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Ainsi, notre fichier .env a été poussé vers Google Cloud. Une alternative à l'utilisation consiste à ajouter les variables d'environnement au fichier app.yaml comme SO:

web: vendor/bin/heroku-php-nginx
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Maintenant, déployez votre application à partir de votre console en exécutant le déploiement de l'application gcloud.

Saisissez l'URL, dans mon cas, c'est https://starwars-166515.appspot.com/, et ajoutez aux origines autorisées (COR) et aux URL de rappel autorisée dans votre tableau de bord Auth0. Ajoutez également l'URL à Auth0_Callback_Url dans votre fichier .env.

Exécutez à nouveau l'application gcloud déploie pour provisionner une nouvelle version de l'application. Consultez votre application maintenant. Il devrait être en direct comme:

Le guide ultime pour déployer des applications PHP dans le cloud application live

Base de données, mise en cache et travail Cron

Google Cloud fournit une plate-forme d'instance SQL Cloud. Découvrez comment configurer, connecter et créer des instances MySQL pour votre application ici.

Vous pouvez également utiliser PhpMyAdmin sur Google App Engine.

Google App Engine comprend des implémentations des API Memcache et Memcached standard. Découvrez comment utiliser memcache dans votre application sur Google Cloud.

Le service CRON du moteur App vous permet de configurer des tâches régulières planifiées qui fonctionnent à des temps définis ou des intervalles réguliers. Découvrez comment planifier les travaux CRON et utiliser les files d'attente de tâches avec PHP sur Google Cloud.

Il est relativement facile de déployer des applications Laravel, Symfony et WordPress sur la plate-forme Google Cloud.

ibm bluemix

IBM BlueMix vous permet de configurer, de déployer et de mettre à l'échelle facilement une infrastructure cloud globale puissante et haute performance. Passons au déploiement de notre célèbre application Star Wars à IBM Bluemix.

Inscrivez-vous sur Bluemix comme SO:

Le guide ultime pour déployer des applications PHP dans le cloud Inscription sur Bluemix

Remarque: la plate-forme Bluemix propose un essai gratuit de 30 jours, vous avez donc la possibilité d'essayer de déployer votre propre application avant de remettre les détails de votre carte de crédit.

Allez-y et créez une organisation et un espace. J'ai nommé mon espace prod.

Le guide ultime pour déployer des applications PHP dans le cloud

Maintenant, allez-y et installez le Cloud Foundry CLI. Une fois que vous avez fait cela, connectez-vous à partir de votre terminal comme:

web: vendor/bin/heroku-php-apache2
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Le guide ultime pour déployer des applications PHP dans le cloud Connectez-vous à Bluemix

L'étape suivante consiste à créer un fichier manifeste.yml dans le répertoire racine de l'application. Le fichier manifeste.yml comprend des informations de base sur votre application, telles que le nom, la quantité de mémoire à allouer pour chaque instance et l'itinéraire. Notre fichier manifeste devrait ressembler à ceci:

web: vendor/bin/heroku-php-nginx
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Vous pouvez également spécifier explicitement le BuildPack dans le fichier manifeste. Heureusement, Cloud Foundry détecte automatiquement quel buildpack est requis lorsque vous poussez une application.

buildPacks Fournissent le cadre et la prise en charge d'exécution pour vos applications. BuildPacks examine généralement les artefacts fournis par l'utilisateur pour déterminer les dépendances à télécharger et comment configurer les applications pour communiquer avec les services liés.

Enfin, déployez votre application en exécutant la commande suivante comme SO:

heroku addons:create cleardb:ignite
Copier après la connexion
Copier après la connexion

doit être un nom unique.

Le guide ultime pour déployer des applications PHP dans le cloud Démarrage de déploiement

Le guide ultime pour déployer des applications PHP dans le cloud fin de déploiement

Essayez d'exécuter l'application maintenant. Dans mon cas, l'URL est starwarsapp.mybluemix.net. Oups, une erreur de 500. Nous n'avons pas encore chargé nos variables d'environnement. Comment faisons-nous cela avec Bluemix?

Vous pouvez soit utiliser le Cloud Foundry CLI, soit l'interface utilisateur Bluemix pour définir les variables d'environnement. Utilisons l'interface utilisateur Bluemix. Alors, suivez les étapes ci-dessous:

  • Ouvrez le tableau de bord Bluemix.

    Le guide ultime pour déployer des applications PHP dans le cloud

  • Cliquez sur l'application. Vous serez redirigé vers une autre page avec plus de détails sur l'application.

  • Sélectionnez l'exécution dans le panneau de gauche.

    Le guide ultime pour déployer des applications PHP dans le cloud

  • Maintenant, cliquez sur les variables environnementales

    Le guide ultime pour déployer des applications PHP dans le cloud

  • Faites défiler vers le bas et cliquez sur le bouton Ajouter pour ajouter les variables d'environnement comme SO

    Le guide ultime pour déployer des applications PHP dans le cloud

  • Cliquez sur le bouton Enregistrer. Une fois que vous avez fait cela, votre application redémarre automatiquement.

Entrez maintenant l'URL, dans mon cas, c'est https://starwarsapp.mybluemix.net/, et ajoutez-le aux origines autorisées (COR) et aux URL de rappel autorisée dans votre tableau de bord Auth0.

Maintenant, consultez votre application - elle devrait être en direct!

Base de données, mise en cache et travail Cron

Cloud Foundry offre la possibilité de créer des services. IBM Bluemix propose la base de données NOSQL Cloudant (le nom Bluemix pour CouchDB). Vous pouvez utiliser l'outil CF pour créer des services de base de données comme SO:

web: vendor/bin/heroku-php-apache2
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

IBM Bluemix propose également le service ClearDB MySQL. Ainsi, vous pouvez utiliser l'outil CF pour en créer un comme SO:

web: vendor/bin/heroku-php-nginx
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Ils offrent mongodb, postgresql et rethinkdb.

Vous pouvez toujours utiliser l'outil Cloud Foundry pour consulter beaucoup de choses telles que les journaux, les variables d'environnement, etc. comme tel:

  • CF LOGS - RECENCE VOTREAPP - Affiche les journaux de votre application.
  • cf env yourApp - montre les variables environnementales associées à votre application.
  • CF Marketplace - montre tous les services que Bluemix a à offrir.

IBM Bluemix propose également Redis Cloud, un service cloud entièrement géré pour l'hébergement et l'exécution de votre ensemble de données Redis dans Bluemix de manière très disponible et évolutive.

IBM Bluemix fournit le service de planificateur de charge de travail. Ce service vous permet d'intégrer votre application avec la capacité de planifier des workflows. Bien au-delà de Cron, exploitez la planification des travaux à l'intérieur et à l'extérieur de Bluemix. Créez facilement des workflows dans votre application pour s'exécuter régulièrement, à un moment précis, sur les événements (par exemple, lorsqu'un fichier est supprimé ou mis à jour), selon vos besoins. Vous pouvez soit utiliser l'interface utilisateur de la charge de travail ou utiliser les API.

commencez avec des travaux de planification ici.

Aussi, voici comment déployer votre application Laravel sur IBM Bluemix.

Microsoft Azure

Microsoft Azure est une autre plate-forme cloud massive qui vous permet de faire évoluer facilement vos applications. Commençons par le déploiement de notre application Star Wars sur Azure.

Avec Microsoft Azure, vous pouvez déployer via:

    ftp.
  • synchronisation avec un dossier cloud.
  • git local.
  • Service de contrôle source basé sur le cloud tel que github ou bitbucket.
Dans notre cas, nous allons configurer le déploiement avec Git.

  1. Tout d'abord, créez un compte avec Microsoft Azure.

    Le guide ultime pour déployer des applications PHP dans le cloud Tableau de bord

  2. Cliquez sur Nouveau sur le panneau de gauche.

  3. Cliquez sur Voir tout juste à côté de Marketplace.

  4. Cliquez sur Web SQL, puis allez-y et créez.

    Le guide ultime pour déployer des applications PHP dans le cloud

  5. Vous serez invité à sélectionner une offre pour le type d'abonnement avec lequel vous êtes à l'aise. J'ai choisi essai gratuit . Avec cela, vous recevrez un crédit Azure de 200 $.

  6. Donnez un nom à votre application, puis créez une base de données SQL. Eh bien, ce n'est pas nécessaire pour notre application, mais pour une raison quelconque, Azure vous oblige à la créer.

    Le guide ultime pour déployer des applications PHP dans le cloud Créez une nouvelle application

  7. Maintenant que notre application a été créée, cliquez sur les services d'application par le panneau de gauche pour voir votre application.

    Le guide ultime pour déployer des applications PHP dans le cloud nouvelle application

  8. Cliquez sur l'application, choisissez Options de déploiement , puis cliquez sur GitHub.

  9. Autoriser l'accès à votre dépôt, choisissez le projet et la branche. Dans mon cas, j'ai une branche Azure. C'est la branche que j'utiliserai pour déployer mon code sur la plate-forme Azure.

    Le guide ultime pour déployer des applications PHP dans le cloud

  10. Consultez les notifications de déploiement.

    Le guide ultime pour déployer des applications PHP dans le cloud

    Maintenant, accédez à http: // [vopiTename] .AzureWebsites.net. Dans mon cas, c'est http://starwarzapp.azurewebsites.net.

    Oops!, Il y a une erreur HTTP 500. Ce qui se passe? D'accord, nous devons remettre les variables d'environnement.

  11. Accédez à votre application dans les services d'application, cliquez sur les paramètres de l'application, puis ajoutez les variables d'environnement à droite.

Entrez maintenant l'URL de l'application, dans mon cas, c'est http://starwarzapp.azurewebsites.net/ et ajouter aux origines autorisées (COR) et les URL de rappel autorisée dans votre tableau de bord Auth0.

  1. Par défaut, le déploiement Azure ne fait rien avec notre fichier composer.json ou composer.lock. Donc, aucun package n'est installé. Revenez maintenant aux services de l'application, cliquez sur votre application, puis accédez aux outils de développement et sélectionnez Extension. Choisissez l'extension du compositeur et acceptez les conditions juridiques.

    Le guide ultime pour déployer des applications PHP dans le cloud

  2. Maintenant, faites un petit changement dans votre application et repoussez à GitHub. Vous devriez le voir se déployer comme:

    Le guide ultime pour déployer des applications PHP dans le cloud

    Le guide ultime pour déployer des applications PHP dans le cloud

  3. Maintenant, consultez votre application à nouveau. Ça devrait être en direct et fonctionner!

    Le guide ultime pour déployer des applications PHP dans le cloud

Base de données, mise en cache et travail Cron

Microsoft Azure propose azure redis cache . Il est basé sur le cache redis open source populaire. Il est facile de créer et de l'utiliser comme:

  1. Cliquez sur Nouveau> Stockage de données> Cache Redis.
  2. Entrez le nom du cache, sélectionnez la région et créez-le.

Consultez la documentation sur la façon de l'utiliser.

Pour les tâches de planification et d'exécution, Azure propose un planificateur. Il vous permet de:

  • Appeler les services à l'intérieur ou à l'extérieur d'Azure.
  • Exécutez des travaux sur n'importe quel horaire.
  • Utilisez des files d'attente de stockage Azure pour des travaux de longue durée ou hors ligne.
  • Invoquez les files d'attente de bus de service azure.

Découvrez comment créer et gérer des travaux à l'aide du planificateur.

Nous avons déjà parlé un peu de la création d'une base de données pendant que nous déployions notre application, mais examinons rapidement comment configurer une base de données MySQL.

  1. Connectez-vous au portail Azure.

  2. Cliquez sur Nouveau dans le panneau de gauche du tableau de bord. Choisissez le stockage de données sur le marché, puis sélectionnez MySQL Database.

  3. Allez-y et configurez votre nouvelle base de données MySQL. Entrez un nom, choisissez votre abonnement, emplacement et remplissez les champs requis. Créer!

  4. Connectez-vous à la base de données.

    Le guide ultime pour déployer des applications PHP dans le cloud

Les développeurs de Laravel peuvent facilement configurer une base de données MySQL pour leurs applications sur Azure.

Amazon Web Services

Plus d'entreprises utilisent AWS (Amazon Web Services) pour stocker toutes sortes de données allant des images et des fichiers MP3 aux vidéos que toute autre plate-forme cloud. En fait, de nombreuses organisations comme Uber, Spotify ou Salesforce utilisent complètement les services Web Amazon - pour l'hébergement, le déploiement et l'infrastructure. AWS a une tonne de produits de développement.

Le service que nous utiliserons pour déployer notre célèbre application Starwars est Amazon Elastic Beanstalk. Commençons.

  • Inscrivez-vous à un compte AWS si vous n'en avez pas.
  • Dirigez-vous vers la console de haricot élastique.
  • Créez une nouvelle application. Le guide ultime pour déployer des applications PHP dans le cloud
  • Cliquez sur Créer un serveur Web. Le guide ultime pour déployer des applications PHP dans le cloud
  • Créez l'environnement du serveur Web. Le guide ultime pour déployer des applications PHP dans le cloud
  • Téléchargez votre code. Elastic Beanstalk nécessite que vous téléchargez un fichier zip de votre base de code. Vous pouvez le zipper manuellement, mais je préfère le faire à partir de mon terminal comme: zip ../starwarsapp.zip -r *. [^.] *
  • Maintenant, téléchargez-le sur AWS comme tel: Le guide ultime pour déployer des applications PHP dans le cloud
  • Vérifier la disponibilité de l'URL de l'application. Le mien ressemble à ceci: Le guide ultime pour déployer des applications PHP dans le cloud
  • La page suivante nous permet de configurer une instance de base de données. Notre application n'en a pas besoin, nous pouvons donc ignorer cela. Le guide ultime pour déployer des applications PHP dans le cloud
  • Cette étape nous permet de modifier nos détails de configuration. Le par défaut est correct pour notre application. Le guide ultime pour déployer des applications PHP dans le cloud
  • Maintenant, ajoutez vos variables d'environnement comme tel: Le guide ultime pour déployer des applications PHP dans le cloud

Entrez maintenant l'URL, dans mon cas, c'est http://starwarzapp.us-est-2.elasticbeanstalk.com et ajoutez aux origines autorisées (COR) et aux URL de rappel autorisée dans votre tableau de bord Auth0. Assurez-vous de l'ajouter en tant que variable d'environnement dans le haricot élastique.

  • Ajouter une autorisation comme tel: Le guide ultime pour déployer des applications PHP dans le cloud
  • consultez les informations avant le lancement. Le guide ultime pour déployer des applications PHP dans le cloud
  • Lancement.

Le guide ultime pour déployer des applications PHP dans le cloud

Le guide ultime pour déployer des applications PHP dans le cloud application live

Découvrez comment déployer:

  • Une application Laravel à Elastic Beanstalk.
  • Une application CakePHP sur le haricot élastique.
  • Une application Symfony2 sur le haricot élastique.
  • un site Web WordPress à Elastic Beanstalk.
  • un site Web Drupal à Elastic Beanstalk.

Base de données, mise en cache et travaux Cron

Vous pouvez utiliser une instance de base de données sur la base de données relationnelle Amazon (Amazon RDS) pour stocker les données recueillies et modifiées par votre application. La base de données peut être attachée à votre environnement et gérée par Elastic Beanstalk, ou créée et gérée à l'extérieur. Découvrez comment ajouter facilement une instance DB à votre application.

Pour la mise en cache, Amazon Web Services propose Elasticache. Il s'agit d'un service Web qui facilite le déploiement, le fonctionnement et l'échelle d'une boutique de données ou d'un cache en mémoire dans le cloud. Amazon Elasticache prend en charge deux moteurs en mémoire open source:

  • redis.
  • Memcached.

Amazon Elasticache détecte et remplace automatiquement les nœuds défaillants, réduisant les frais généraux associés aux infrastructures autogérées et fournit un système résilient qui atténue le risque de bases de données surchargées, ce qui ralentit les sites Web et augmente les temps de chargement des applications. Grâce à l'intégration avec Amazon CloudWatch, Amazon Elasticache offre une visibilité améliorée dans les mesures de performances clés associées à votre redis ou aux nœuds memcached.

Des entreprises comme Airbnb, HealthGuru, PlaceIQ et Tokyo Data Network utilisent Elasticache pour la mise en cache à plusieurs couches couvrant des fragments HTML, les résultats de requêtes de base de données coûteuses, les données de session éphémères et les résultats de recherche.

Découvrez comment installer le client Elasticache Cluster pour PHP ici.

Voici un excellent post sur la construction d'un compteur de visiteur PHP avec élastique et haricot élastique

Vous pouvez configurer un travail cron sur le haricot élastique. Apprenez à exécuter des travaux CRON sur Amazon Web Services (AWS) Elastic Beanstalk.

Laravel Forge

Laravel Forge, créé par Taylor Otwell est une plate-forme qui vous aide à déployer et à lancer votre application en quelques minutes. Il fait le lourdeur pour vous. Forge s'occupe de l'approvisionnement de vos serveurs sur des fournisseurs d'hébergement cloud populaires tels que Linode, Digital Ocean et AWS. Il a été initialement conçu pour les applications Laravel, mais maintenant il prend en charge pratiquement toutes les applications PHP.

Le guide ultime pour déployer des applications PHP dans le cloud Laravel Forge

Laravel Forge vous permet de faire facilement les serveurs suivants, à part provisionnement des serveurs:

  • Il s'intègre à LETSENCYPT pour générer des certificats SSL gratuits pour vos applications.
  • Gérer facilement les emplois et les files d'attente.
  • Collaboration avec votre équipe en partageant le tableau de bord de gestion de votre serveur avec des collègues.

Matt Stauffer a un article incroyable sur le déploiement de votre première application Laravel à forger.

James Fairhurst a également un excellent guide sur l'utilisation de Laravel Forge pour configurer un serveur AWS.

La plate-forme PHP éducative la plus populaire, Laracast.com a une série sur la gestion des serveurs avec Forge.

Et bien sûr, nous le mentionnons dans notre cours Laravel, et le couvrons également dans des tutoriels approfondis comme ceux-ci.

Envoyer

Envoyer est une plate-forme qui permet un déploiement PHP de temps d'arrêt zéro - c'est la version SaaS de Envoy. Il vous permet de vous intégrer à divers services tels que Gitlab, Slack, Bitbucket E.T.C.

Avec l'envoi, vous pouvez jouer:

  • Rollbacks de déploiement sans couture.
  • Déployer sur plusieurs serveurs.
  • Surveiller les travaux cron.
  • Effectuer des contrôles de santé des applications.

Déploieur

Déploieur est un outil de déploiement pour PHP. Il vous permet de faire ce qui suit:

  • Exécuter des tâches en parallèle.
  • Déploiements atomiques.
  • Rollbacks.
  • Créer des scripts de déploiement sous forme de recettes.

Cela fonctionne avec laravel , symfony , Cakephp , yiiframework , zend , fuelPhp. , drupal , wordpress , et magento . Consultez cet excellent article sur le déploiement des applications PHP avec le déploieur.

Conclusion

Il n'y a aucun moyen de couvrir toutes les différentes options disponibles pour le déploiement d'applications PHP. PHP est un langage d'entreprise qui a évolué au fil des ans, appelant ainsi à des moyens plus efficaces de déployer des applications PHP de la machine locale à la production. J'espère que ce guide couvre tous vos besoins de base pour déployer vos applications PHP à tous les principaux fournisseurs de cloud. Cependant, il existe une autre ressource que je recommande pour des connaissances approfondies pour apprendre à déployer des applications PHP.

Comment avez-vous géré vos déploiements? S'il vous plaît, faites-le moi savoir dans la section des commentaires ci-dessous!

Questions fréquemment posées (FAQ) sur le déploiement des applications PHP dans le cloud

Quels sont les avantages du déploiement d'applications PHP dans le cloud?

Le déploiement d'applications PHP dans le cloud offre plusieurs avantages. Premièrement, il offre une évolutivité. À mesure que votre application se développe, vous pouvez facilement ajuster vos ressources pour répondre à la demande. Deuxièmement, il offre une efficacité. Vous ne payez que les ressources que vous utilisez, ce qui peut être une économie importante par rapport à l'hébergement traditionnel. Troisièmement, l'hébergement cloud offre de meilleures performances et vitesse. Avec des centres de données situés dans le monde entier, votre application peut être hébergée plus près de vos utilisateurs, ce qui réduit la latence. Enfin, il offre une meilleure fiabilité et une meilleure disponibilité, car votre application ne dépend pas d'un seul serveur.

Comment puis-je choisir le bon service cloud pour mon application PHP?

Choisir le bon service cloud Pour votre application PHP, dépend de plusieurs facteurs. Il s'agit notamment des besoins spécifiques de votre application, de votre budget et de votre expertise technique. Certains services cloud offrent des fonctionnalités plus avancées mais peuvent nécessiter des connaissances plus techniques pour l'utiliser efficacement. D'autres peuvent être plus conviviaux mais peuvent ne pas offrir le même niveau de personnalisation ou de contrôle. Il est important de rechercher à fond chaque option et de considérer les fonctionnalités et les services les plus importants pour vos besoins spécifiques.

Quelles sont les étapes pour déployer une application PHP sur Google Cloud?

Le déploiement d'une application PHP sur Google Cloud implique plusieurs étapes. Tout d'abord, vous devez créer un compte Google Cloud et configurer un nouveau projet. Ensuite, vous devez installer le SDK Google Cloud sur votre machine locale. Ensuite, vous devez configurer les paramètres de votre application dans le fichier app.yaml. Après cela, vous pouvez déployer votre application à l'aide de la commande GCLOUD App Deploy. Enfin, vous pouvez afficher votre application dans le navigateur à l'aide de la commande GCLOUD App Browse.

Comment puis-je assurer la sécurité de mon application PHP dans le cloud?

Assurer la sécurité de votre application PHP dans le nuage implique plusieurs mesures. Il s'agit notamment de l'utilisation de pratiques de codage sécurisées, de mise à jour et de correction régulièrement de votre logiciel, à l'aide du chiffrement pour les données en transit et au repos, en mettant en œuvre de solides contrôles d'accès et en surveillant et audition régulièrement vos systèmes pour toute activité inhabituelle.

Quel est le Rôle d'une plate-forme d'hébergement PHP comme Cloudways?

Une plate-forme d'hébergement PHP comme Cloudways fournit un environnement géré pour déployer et exécuter vos applications PHP dans le cloud. Il s'occupe de nombreux aspects techniques de l'hébergement cloud, tels que la configuration du serveur, la sécurité, les sauvegardes et les mises à jour, vous permettant de vous concentrer sur le développement de votre application. Il fournit également des outils et des fonctionnalités pour vous aider à optimiser les performances et l'évolutivité de votre application.

Comment puis-je migrer mon application PHP existante vers le cloud?

Migrer votre application PHP existante vers le cloud implique plusieurs mesures. Tout d'abord, vous devez choisir un service cloud et créer un compte. Ensuite, vous devez préparer votre application pour la migration, ce qui peut impliquer de refactoriser votre code ou d'apporter d'autres modifications pour assurer la compatibilité avec l'environnement cloud. Ensuite, vous devez déployer votre application sur le cloud, la tester soigneusement pour vous assurer qu'elle fonctionne correctement, puis passer vos utilisateurs à la nouvelle version.

Quels sont les défis du déploiement d'applications PHP dans le cloud?

Le déploiement d'applications PHP dans le cloud peut présenter plusieurs défis. Il s'agit notamment de gérer la complexité de l'environnement cloud, d'assurer la sécurité de votre application et de données, la gestion des coûts et l'optimisation des performances. Il est important d'avoir une bonne compréhension de ces défis et comment les relever avant de commencer votre déploiement.

Comment puis-je optimiser les performances de mon application PHP dans le cloud?

Optimisation des performances de votre application PHP dans le cloud peut impliquer plusieurs stratégies. Il s'agit notamment de choisir la bonne taille et le bon type de ressources cloud pour vos besoins, en utilisant la mise en cache et d'autres fonctionnalités améliorant les performances, l'optimisation de vos requêtes de code et de base de données, et surveiller et ajuster régulièrement vos ressources au besoin.

Quel est le rôle des bibliothèques PHP de Google Cloud?

Les bibliothèques Google Cloud PHP fournissent un moyen d'interagir avec Google Cloud Services à partir de votre application PHP. Ils fournissent un ensemble d'API que vous pouvez utiliser pour effectuer diverses opérations, telles que le stockage et la récupération de données, l'exécution de requêtes et la gestion des ressources. L'utilisation de ces bibliothèques peut faciliter l'intégration de votre application avec Google Cloud et profiter de ses fonctionnalités et services.

Qu'est-ce que RunCloud et comment peut-il aider à déployer des applications PHP dans le cloud?

RunCloud est un outil de gestion de serveur cloud qui simplifie le processus de déploiement et de gestion des applications PHP dans le cloud. Il fournit une interface conviviale et une gamme d'outils et de fonctionnalités pour vous aider à configurer, sécuriser et optimiser vos serveurs cloud. Il prend en charge plusieurs fournisseurs de cloud et vous permet de gérer tous vos serveurs à partir d'un seul tableau de bord.

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 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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal