{"id":31082,"date":"2024-04-07T18:31:42","date_gmt":"2024-04-07T18:31:42","guid":{"rendered":"\/tutoriels\/?p=31082"},"modified":"2026-01-20T21:19:24","modified_gmt":"2026-01-20T21:19:24","slug":"deployer-applications-web-avec-kamal","status":"publish","type":"post","link":"\/fr\/tutoriels\/deployer-applications-web-avec-kamal","title":{"rendered":"Comment d\u00e9ployer des applications web avec Kamal : d\u00e9ploiement efficace d&rsquo;applications conteneuris\u00e9es"},"content":{"rendered":"<p>Le d&eacute;ploiement d&rsquo;une application web conteneuris&eacute;e peut souvent sembler d&eacute;courageant. Kamal est un outil con&ccedil;u pour rationaliser et simplifier le d&eacute;ploiement d&rsquo;applications web, rendant votre flux de travail plus efficace et plus fiable.<\/p><p>Dans cet article, vous apprendrez &agrave; d&eacute;ployer des applications web &agrave; l&rsquo;aide de Kamal sur un serveur priv&eacute; virtuel (VPS). Nous vous pr&eacute;senterons &eacute;galement plusieurs bonnes pratiques pour am&eacute;liorer le processus de d&eacute;ploiement de vos applications.<\/p><p>&Agrave; la fin de ce guide, vous serez bien &eacute;quip&eacute; pour tirer parti de la puissance de Kamal dans vos projets. Commen&ccedil;ons par le commencement.<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Linux-Commands-Cheatsheet-FR.pdf\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"1024\" height=\"283\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/public\" alt=\"\" class=\"wp-image-41445\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>\n\n\n\n\n\n<div class=\"protip\">\n                    <h2 class=\"featured-snippet title\">Qu'est-ce que Kamal ?<\/h2>\n                    <p>Kamal est un outil de d&eacute;ploiement qui facilite le d&eacute;ploiement efficace des applications web. Il int&egrave;gre les services et les op&eacute;rations essentiels dans un flux de travail coh&eacute;rent, ce qui rend le d&eacute;ploiement d&rsquo;applications web avec Kamal plus rationnel et moins sujet aux erreurs.<\/p>\n                <\/div>\n\n\n\n<\/p><p>Con&ccedil;u pour g&eacute;rer et automatiser le d&eacute;ploiement des applications web, Kamal r&eacute;duit la complexit&eacute; souvent associ&eacute;e &agrave; la gestion manuelle des serveurs et des services. Il permet aux d&eacute;veloppeurs de se concentrer sur la cr&eacute;ation et la mise &agrave; jour de leurs applications web sans avoir &agrave; se pr&eacute;occuper de la logistique de d&eacute;ploiement.<\/p><p>Kamal prend en charge des d&eacute;ploiements allant d&rsquo;un serveur m&eacute;tallique nu &agrave; une simple machine virtuelle. Il offre des d&eacute;ploiements sans temps d&rsquo;arr&ecirc;t, des red&eacute;marrages en continu, des ponts d&rsquo;actifs, des constructions &agrave; distance et une gestion compl&egrave;te des services accessoires.<\/p><p>Avec Kamal, vous pouvez d&eacute;ployer sans effort des applications web, configurer des serveurs, g&eacute;rer des bases de donn&eacute;es et &eacute;quilibrer le trafic. Cet outil prend en charge divers environnements, ce qui le rend polyvalent pour le d&eacute;ploiement d&rsquo;applications web sur diff&eacute;rentes plateformes.<\/p><h3 class=\"wp-block-heading\" id=\"h-pourquoi-utiliser-kamal-pour-le-deploiement-d-applications-web\">Pourquoi utiliser Kamal pour le d&eacute;ploiement d&rsquo;applications Web ?<\/h3><div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" width=\"1024\" height=\"476\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/04\/image-15.png\/public\" alt=\"Page d'accueil officielle de Kamal\" class=\"wp-image-31084\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/04\/image-15.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/04\/image-15.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/04\/image-15.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/04\/image-15.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p>Choisir Kamal pour le d&eacute;ploiement de votre application web offre plusieurs avantages aux d&eacute;veloppeurs et aux entreprises. Voici ce qui distingue Kamal :<\/p><ul class=\"wp-block-list\">\n<li><strong>Simplicit&eacute; <\/strong>&ndash; L&rsquo;approche directe de Kamal en mati&egrave;re de d&eacute;ploiement permet d&rsquo;&eacute;viter la courbe d&rsquo;apprentissage souvent abrupte associ&eacute;e &agrave; d&rsquo;autres outils de d&eacute;ploiement. Il simplifie le processus en permettant le d&eacute;ploiement d&rsquo;applications &agrave; l&rsquo;aide de quelques <a href=\"\/fr\/tutoriels\/commandes-linux\">commandes Linux<\/a> seulement.<\/li>\n\n\n\n<li><strong>Automatisation <\/strong>&ndash; L&rsquo;automatisation de Kamal pour les d&eacute;ploiements rationalise vos flux de travail. Des mises &agrave; jour &agrave; la mise &agrave; l&rsquo;&eacute;chelle, Kamal automatise ces t&acirc;ches, garantissant qu&rsquo;elles sont accomplies rapidement et de mani&egrave;re coh&eacute;rente. Cela signifie moins de temps pour les processus manuels et plus de temps pour le d&eacute;veloppement.<\/li>\n\n\n\n<li><strong>Fiabilit&eacute; <\/strong>&ndash; avec Kamal, vous pouvez vous attendre &agrave; des versions stables. Son processus de d&eacute;ploiement structur&eacute; minimise les erreurs qui peuvent survenir lors de d&eacute;ploiements manuels, garantissant ainsi le bon fonctionnement et la fiabilit&eacute; de votre application web.<\/li>\n\n\n\n<li><strong>Ad&eacute;quation <\/strong>&ndash; Kamal est exceptionnellement compatible avec les environnements VPS Linux. Son alignement avec les serveurs Linux signifie que vous pouvez exploiter tout le potentiel et la flexibilit&eacute; du d&eacute;ploiement d&rsquo;applications sur un h&eacute;bergement VPS Linux.<\/li>\n<\/ul><h2 class=\"wp-block-heading\" id=\"h-comment-deployer-des-applications-web-a-l-aide-de-kamal\">Comment d&eacute;ployer des applications Web &agrave; l&rsquo;aide de Kamal<\/h2><p>Dans cette section, vous apprendrez &agrave; utiliser Kamal pour rationaliser le processus de d&eacute;ploiement de votre application web.<\/p><h3 class=\"wp-block-heading\" id=\"h-1-preparer-le-deploiement\">1. Pr&eacute;parer le d&eacute;ploiement<\/h3><p>Qu&rsquo;il s&rsquo;agisse d&rsquo;une machine locale ou d&rsquo;un serveur virtuel, la pr&eacute;paration des conditions pr&eacute;alables garantit un d&eacute;ploiement fluide de l&rsquo;application web avec Kamal. Dans cet exemple, nous utiliserons l&rsquo;<a href=\"\/fr\/vps\">h&eacute;bergement VPS<\/a> d&rsquo;Hostinger pour configurer votre environnement en vue du d&eacute;ploiement d&rsquo;une application web.<\/p><p>Le VPS d&rsquo;Hostinger offre un serveur fiable qui pr&eacute;pare le terrain pour vos besoins de d&eacute;ploiement. Il offre des mesures de s&eacute;curit&eacute; de premier ordre, une &eacute;volutivit&eacute; facile pour cro&icirc;tre en m&ecirc;me temps que votre application, et Kodee, notre assistant IA pour simplifier vos processus de d&eacute;veloppement et de d&eacute;ploiement.<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.hostinger.com\/fr\/vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/public\" alt=\"\" class=\"wp-image-41471\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>Apr&egrave;s avoir pr&eacute;par&eacute; votre VPS, acc&eacute;dez &agrave; votre serveur avec PuTTY ou tout autre client SSH. Ensuite, mettez &agrave; jour vos paquets Linux avec les <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/commandes-ssh-de-base-que-vous-devez-connaitre\">commandes SSH<\/a> suivantes :<\/p><pre class=\"wp-block-preformatted\">sudo apt-get update &amp;&amp; sudo apt-get upgrade<\/pre><p>Ensuite, configurez l&rsquo;environnement logiciel requis par votre application web, ce qui peut inclure l&rsquo;installation d&rsquo;un serveur web tel qu&rsquo;Apache ou NGINX et la configuration d&rsquo;une base de donn&eacute;es telle que MySQL ou PostgreSQL. Il est &eacute;galement essentiel de s&eacute;curiser votre serveur &agrave; l&rsquo;aide de pare-feu et de cl&eacute;s SSH pour un acc&egrave;s s&eacute;curis&eacute;.<\/p><p>Si vous d&eacute;veloppez une application Rails, assurez-vous que Ruby on Rails est install&eacute;. Sinon, vous pouvez <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/installer-docker-sur-ubuntu\">installer Docker<\/a> et g&eacute;rer les conteneurs pour votre application.<\/p><h3 class=\"wp-block-heading\" id=\"h-2-installer-et-deployer-avec-kamal\">2. Installer et d&eacute;ployer avec Kamal<\/h3><p>Une fois que votre environnement est pr&ecirc;t, proc&eacute;dez &agrave; l&rsquo;installation de Kamal. Pour ceux qui ont un environnement Ruby, installez Kamal globalement sur votre VPS Linux avec la commande suivante :<\/p><pre class=\"wp-block-preformatted\">gem install kamal<\/pre><p>Cela rend Kamal accessible &agrave; partir de n&rsquo;importe quel r&eacute;pertoire de votre serveur.<\/p><p>Si vous pr&eacute;f&eacute;rez la conteneurisation dans les d&eacute;ploiements de Kamal, tirez l&rsquo;image Docker et d&eacute;finissez un alias dans votre fichier de configuration shell. Cela vous permet d&rsquo;utiliser les commandes Kamal sans installer les d&eacute;pendances sur votre serveur.<\/p><p>Ensuite, naviguez vers le r&eacute;pertoire <strong>config <\/strong>et ouvrez le fichier <strong>deploy.yml.<\/strong> Ici, vous pouvez sp&eacute;cifier des d&eacute;tails tels que les &eacute;tapes de d&eacute;ploiement, les adresses IP publiques et l&rsquo;URL du r&eacute;f&eacute;rentiel pour le contr&ocirc;le de version avec Kamal.<\/p><p>Votre fichier <strong>deploy.yml <\/strong>inclura &eacute;galement les d&eacute;tails du registre. Si vous utilisez Docker Hub, vous n&rsquo;aurez pas besoin de sp&eacute;cifier un serveur car c&rsquo;est le serveur par d&eacute;faut.<\/p><p>Voici un exemple basique de ce que le contenu de <strong>deploy.yml <\/strong>pourrait inclure :<\/p><pre class=\"wp-block-preformatted\"># Your web app name. Used to uniquely configure containers.\nservice: hey\n# Your image host or container image name\nimage: 37s\/hey\nservers:\n  - 192.168.0.1\n  - 192.168.0.2\nregistry:\n  # The container registry server, if you're not using Docker Hub\n  # server: ghcr.io \/ ...\n  username: registry-user-name\n  password:\n    secure: KAMAL_REGISTRY_PASSWORD\nenv:\n  secret:\n    secure: RAILS_MASTER_KEY\n#Configure a custom healthcheck\nhealthcheck:\n  path: \/healthz\n  port: 4000\n  max_attempts: 7\n  interval: 20s<\/pre><p>N&rsquo;oubliez pas de s&eacute;curiser vos informations d&rsquo;identification en rempla&ccedil;ant <strong>KAMAL_REGISTRY_PASSWORD <\/strong>par votre jeton d&rsquo;acc&egrave;s au registre Docker.<\/p><p>Une fois le fichier de configuration configur&eacute;, il est temps de lancer le processus de d&eacute;ploiement. Pour le d&eacute;ploiement initial, ex&eacute;cutez :<\/p><pre class=\"wp-block-preformatted\">kamal setup<\/pre><p>Il pr&eacute;pare vos serveurs en cr&eacute;ant des r&eacute;pertoires, en d&eacute;finissant des autorisations et en effectuant d&rsquo;autres t&acirc;ches n&eacute;cessaires.<\/p><p>Pour les d&eacute;ploiements ult&eacute;rieurs, utilisez :<\/p><pre class=\"wp-block-preformatted\">kamal deploy<\/pre><p>Cette commande ex&eacute;cute les t&acirc;ches d&eacute;crites dans votre fichier <strong>deploy.yml<\/strong>, telles que les mises &agrave; jour de code, les migrations et les red&eacute;marrages de service.<\/p><h3 class=\"wp-block-heading\" id=\"h-3-pousser-les-fichiers-d-environnement\">3. Pousser les fichiers d&rsquo;environnement<\/h3><p>Pour d&eacute;ployer efficacement votre application web &agrave; l&rsquo;aide de Kamal, il est essentiel de g&eacute;rer m&eacute;ticuleusement vos fichiers d&rsquo;environnement. Ces fichiers contiennent des variables d&rsquo;environnement essentielles &agrave; la configuration de votre application dans les diff&eacute;rents environnements de d&eacute;veloppement, de test et de production.<\/p><p>Pour des raisons de s&eacute;curit&eacute;, les fichiers <strong>ENV <\/strong>de votre application ne devraient jamais &ecirc;tre inclus dans le contr&ocirc;le de version. Au lieu de cela, utilisez les fonctions robustes de gestion de l&rsquo;environnement de Kamal pour transf&eacute;rer ces fichiers sur votre serveur en toute s&eacute;curit&eacute;.<\/p><p>Commencez par s&eacute;curiser votre fichier d&rsquo;environnement dans un lieu de stockage s&ucirc;r. Envisagez d&rsquo;utiliser le VPS de Hostinger pour g&eacute;rer de mani&egrave;re fiable les variables d&rsquo;environnement de votre application, en veillant &agrave; ce qu&rsquo;elles soient appliqu&eacute;es de mani&egrave;re s&eacute;curis&eacute;e et maintenues de mani&egrave;re coh&eacute;rente tout au long du d&eacute;ploiement.<\/p><p>Ensuite, utilisez la commande <strong>kamal env push <\/strong>pour transf&eacute;rer le fichier vers votre serveur en toute s&eacute;curit&eacute;.<\/p><p>Chaque fois que vous ajoutez de nouvelles variables d&rsquo;environnement ou que vous modifiez des variables existantes dans votre fichier <strong>ENV<\/strong>, n&rsquo;oubliez pas de pousser ces mises &agrave; jour vers vos serveurs distants &agrave; l&rsquo;aide de la commande <strong>kamal env push<\/strong>. Avant d&rsquo;ex&eacute;cuter la commande <strong>kamal deploy<\/strong>, effectuez cette &eacute;tape pour vous assurer que votre processus de d&eacute;ploiement incorpore les variables mises &agrave; jour dans le conteneur de votre application.<\/p><p>Ces proc&eacute;dures sont essentielles pour faire fonctionner correctement les services et les <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/comment-creer-un-conteneur-docker\">conteneurs Docker<\/a>, car elles s&rsquo;appuient sur les param&egrave;tres de configuration corrects fournis par les variables d&rsquo;environnement.<\/p><h3 class=\"wp-block-heading\" id=\"h-4-executer-des-commandes-sur-des-serveurs\">4. Ex&eacute;cuter des commandes sur des serveurs<\/h3><p>Pour simplifier la gestion de vos applications web, Kamal propose une fonction conviviale qui vous permet d&rsquo;ex&eacute;cuter des commandes &agrave; travers votre infrastructure de serveurs de mani&egrave;re efficace.<\/p><p>Par exemple, pour lancer une commande sur tous vos serveurs afin de v&eacute;rifier la version de Ruby, vous devez utiliser :<\/p><pre class=\"wp-block-preformatted\">kamal app exec 'ruby -v'<\/pre><p>La sortie confirmera la version de Ruby sur chaque h&ocirc;te de l&rsquo;application, par exemple :<\/p><pre class=\"wp-block-preformatted\">App Host: 192.168.0.1\nruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x86_64-linux]\nApp Host: 192.168.0.2\nruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x86_64-linux]<\/pre><p>Pour cibler uniquement le serveur primaire, la commande serait la suivante :<\/p><pre class=\"wp-block-preformatted\">kamal app exec --primary 'cat .ruby-version'<\/pre><p>Si vous devez ex&eacute;cuter une commande li&eacute;e &agrave; Rails sur tous les serveurs, par exemple pour v&eacute;rifier la configuration de l&rsquo;environnement Rails, vous devez saisir ce qui suit :<\/p><pre class=\"wp-block-preformatted\">kamal app exec 'bin\/rails about'<\/pre><p>Le r&eacute;sultat devrait ressembler &agrave; ceci :<\/p><pre class=\"wp-block-preformatted\">App Host: 192.168.0.1\nAbout your application's environment\nRails version:             7.1.0.alpha\nRuby version:              ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x86_64-linux]\nRubyGems version:          3.3.26\nRack version:              2.2.5\nMiddleware:                ActionDispatch::HostAuthorization, Rack::Sendfile, ActionDispatch::Static, ActionDispatch::Executor, Rack::Runtime, Rack::MethodOverride, ActionDispatch::RequestId, ActionDispatch::RemoteIp, Rails::Rack::Logger, ActionDispatch::ShowExceptions, Action Dispatch::DebugExceptions, Action Dispatch::Callbacks, Action Dispatch::Cookies, Action Dispatch::Session::CookieStore, Action Dispatch::Flash, Action Dispatch::ContentSecurityPolicy::Middleware, Action Dispatch::PermissionsPolicy::Middleware, Rack::Head, Rack::ConditionalGet, Rack::ETag, Rack::TempfileReaper\nApplication root:          \/rails\nEnvironment:               production\nDatabase adapter:          sqlite3\nDatabase schema version:   20221231233303<\/pre><p>Pour les t&acirc;ches plus interactives comme le lancement d&rsquo;une console Rails ou d&rsquo;une session bash, Kamal simplifie le processus. Il suffit d&rsquo;ex&eacute;cuter les commandes suivantes pour d&eacute;marrer une session bash dans un nouveau conteneur d&rsquo;image d&rsquo;application ou dans le conteneur Docker en cours d&rsquo;ex&eacute;cution :<\/p><pre class=\"wp-block-preformatted\"># New container bash session\nkamal app exec -i bash\n# Reuse the current container for bash session\nkamal app exec -i --reuse bash\n# New container Rails console\nkamal app exec -i 'bin\/rails console'<\/pre><h3 class=\"wp-block-heading\" id=\"h-5-verifier-l-etat-du-serveur-avec-kamal-details\">5. V&eacute;rifier l&rsquo;&eacute;tat du serveur avec Kamal Details<\/h3><p>Comprendre l&rsquo;&eacute;tat de vos serveurs est crucial pour maintenir leur sant&eacute; et assurer le bon fonctionnement de vos applications. Kamal fournit un moyen efficace de surveiller cet &eacute;tat gr&acirc;ce &agrave; la commande <strong>details.<\/strong><\/p><p>L&rsquo;ex&eacute;cution de <strong>kamal details <\/strong>vous donne un aper&ccedil;u de vos conteneurs, de leur &eacute;tat et de leurs performances. Voici ce que vous verrez g&eacute;n&eacute;ralement :<\/p><p>Pour les conteneurs Traefik :<\/p><pre class=\"wp-block-preformatted\">Traefik Host: 192.168.0.1\nCONTAINER ID   IMAGE    COMMAND                 CREATED          STATUS          PORTS\n6195b2a28c81   traefik  \"\/entrypoint.sh&hellip;\" 30 minutes ago   Up 19 minutes   0.0.0.0:80-&gt;80\/tcp...<\/pre><p>Pour vos conteneurs d&rsquo;application :<\/p><pre class=\"wp-block-preformatted\">App Host: 192.168.0.1\nCONTAINER ID   IMAGE                     COMMAND          CREATED         STATUS          PORTS\nbadb1aa51db3   registry.domain.tld\/...  \"\/rails\/bin\/&hellip;\"  13 minutes ago  Up 13 minutes   3000\/tcp<\/pre><p>Cette sortie vous permet de v&eacute;rifier rapidement que les conteneurs sont op&eacute;rationnels et que les ports sont correctement mapp&eacute;s, ce qui indique un &eacute;tat de serveur sain.<\/p><p>Pour une inspection plus cibl&eacute;e, vous pouvez restreindre les d&eacute;tails &agrave; des conteneurs sp&eacute;cifiques &agrave; l&rsquo;application ou &agrave; Traefik en utilisant respectivement <strong>kamal app details <\/strong>ou <strong>kamal traefik details.<\/strong><\/p><p>Ces commandes cibl&eacute;es fournissent un acc&egrave;s direct aux journaux et aux sp&eacute;cificit&eacute;s des conteneurs, rationalisant ainsi le processus de gestion des configurations de l&rsquo;environnement et simplifiant la gestion des erreurs dans les d&eacute;ploiements de Kamal.<\/p><h3 class=\"wp-block-heading\" id=\"h-6-deploiements-retroactifs\">6. D&eacute;ploiements r&eacute;troactifs<\/h3><p>Lorsqu&rsquo;un d&eacute;ploiement ne se d&eacute;roule pas comme pr&eacute;vu, Kamal propose un processus de retour en arri&egrave;re simple. Il s&rsquo;agit de r&eacute;activer un conteneur Docker pr&eacute;c&eacute;demment stable. Pour g&eacute;rer un retour en arri&egrave;re rapide et efficace, suivez les &eacute;tapes suivantes :<\/p><p>Tout d&rsquo;abord, identifiez les anciens conteneurs disponibles &agrave; l&rsquo;aide de la commande <strong>kamal app containers.<\/strong> La liste des conteneurs actifs et inactifs s&rsquo;affichera. Recherchez le dernier conteneur actif par son image ou son ID avant l&rsquo;&eacute;chec du d&eacute;ploiement.<\/p><p>Par exemple, vous pouvez voir une sortie indiquant :<\/p><pre class=\"wp-block-preformatted\">App Host: 192.168.0.1\nCONTAINER ID   IMAGE               COMMAND                  STATUS\n1d3c91ed1f51   [previous_image]    \"\/rails\/bin\/docker-e&hellip;\"   Up 19 minutes\n539f26b28369   [failed_image]      \"\/rails\/bin\/docker-e&hellip;\"   Exited (1) 27 minutes ago<\/pre><p>Pour revenir en arri&egrave;re, ex&eacute;cutez <strong>kamal rollback [previous_image_tag]<\/strong>. Kamal arr&ecirc;tera le conteneur probl&eacute;matique actuel et red&eacute;marrera le dernier conteneur stable. Le conteneur pr&eacute;c&eacute;dent &eacute;tant d&eacute;j&agrave; sur l&rsquo;h&ocirc;te, le retour en arri&egrave;re s&rsquo;effectue rapidement sans avoir &agrave; puiser &agrave; nouveau dans le registre.<\/p><p>Notez que les anciens conteneurs sont automatiquement purg&eacute;s au bout de trois jours apr&egrave;s un nouveau <strong>d&eacute;ploiement de kamal<\/strong>, il est donc conseill&eacute; de confirmer le succ&egrave;s de votre d&eacute;ploiement dans ce d&eacute;lai afin de conserver la possibilit&eacute; d&rsquo;un retour en arri&egrave;re rapide.<\/p><p>Il est &eacute;galement essentiel de s&rsquo;assurer que vous disposez d&rsquo;une sauvegarde et d&rsquo;une r&eacute;cup&eacute;ration appropri&eacute;es avec Kamal afin de vous pr&eacute;munir contre les probl&egrave;mes impr&eacute;vus. L&rsquo;h&eacute;bergement VPS d&rsquo;Hostinger comprend des sauvegardes automatis&eacute;es, am&eacute;liorant de fa&ccedil;on transparente vos capacit&eacute;s de retour en arri&egrave;re.<\/p><h3 class=\"wp-block-heading\" id=\"h-7-nettoyer-les-serveurs-avec-kamal-remove\">7. Nettoyer les serveurs avec Kamal Remove<\/h3><p>La gestion de l&rsquo;espace et des performances du serveur implique la suppression des applications inutilis&eacute;es. Avec Kamal, le nettoyage de votre serveur est simple. Pour supprimer une application enti&egrave;re, ex&eacute;cutez la commande <strong>kamal remove.<\/strong><\/p><p>Kamal supprimera ensuite tous les composants associ&eacute;s &agrave; l&rsquo;application sur le serveur, notamment en arr&ecirc;tant et en supprimant les conteneurs Docker, en effa&ccedil;ant toute image Docker et en supprimant toutes les sessions de registre associ&eacute;es.<\/p><p>Cette commande est pratique pour s&rsquo;assurer que votre serveur ne soit pas encombr&eacute; et qu&rsquo;il fonctionne de mani&egrave;re optimale. Cependant, il est essentiel d&rsquo;utiliser cette fonctionnalit&eacute; avec prudence. Avant d&rsquo;ex&eacute;cuter <strong>kamal remove<\/strong>, assurez-vous d&rsquo;avoir des sauvegardes de toutes les donn&eacute;es que vous souhaitez conserver.<\/p><h3 class=\"wp-block-heading\" id=\"h-8-redemarrer-traefik\">8. Red&eacute;marrer Traefik<\/h3><p>Lorsque vous g&eacute;rez le proxy inverse et l&rsquo;&eacute;quilibreur de charge de votre serveur, il peut arriver que vous deviez red&eacute;marrer Traefik, le service qui achemine votre trafic HTTP. Ce besoin survient g&eacute;n&eacute;ralement apr&egrave;s des mises &agrave; jour des arguments ou des &eacute;tiquettes de Traefik, n&eacute;cessitant un red&eacute;marrage pour que les changements soient pris en compte.<\/p><p>Pour red&eacute;marrer Traefik &agrave; l&rsquo;aide de Kamal, utilisez la commande suivante :<\/p><pre class=\"wp-block-preformatted\">kamal traefik reboot<\/pre><p>Cette op&eacute;ration red&eacute;marre le service Traefik et met en &oelig;uvre vos nouvelles configurations. Cependant, dans un environnement de production, o&ugrave; la stabilit&eacute; et le temps de fonctionnement sont essentiels, optez pour la fonction de red&eacute;marrage progressif :<\/p><pre class=\"wp-block-preformatted\">kamal traefik reboot --rolling<\/pre><p>Un red&eacute;marrage progressif red&eacute;marre m&eacute;thodiquement les conteneurs Traefik de mani&egrave;re s&eacute;quentielle, garantissant ainsi l&rsquo;absence de temps d&rsquo;arr&ecirc;t et le maintien d&rsquo;une fonctionnalit&eacute; d&rsquo;&eacute;quilibrage de charge continue. Cette approche plus s&ucirc;re garantit que vos applications web restent accessibles aux utilisateurs pendant que les mises &agrave; jour se d&eacute;roulent en arri&egrave;re-plan.<\/p><h2 class=\"wp-block-heading\" id=\"h-meilleures-pratiques-pour-le-deploiement-d-applications-web-avec-kamal\">Meilleures pratiques pour le d&eacute;ploiement d&rsquo;applications Web avec Kamal<\/h2><p>Apr&egrave;s avoir appris &agrave; d&eacute;ployer votre web app sur un serveur, explorons les meilleures pratiques de d&eacute;ploiement de Kamal pour une gestion fluide et efficace de l&rsquo;application web.<\/p><h3 class=\"wp-block-heading\" id=\"h-automatiser-le-processus-de-deploiement\">Automatiser le processus de d&eacute;ploiement<\/h3><p>L&rsquo;automatisation des d&eacute;ploiements par Kamal transforme les t&acirc;ches manuelles r&eacute;p&eacute;titives en une op&eacute;ration en un seul clic. Les commandes et les scripts de Kamal vous permettent d&rsquo;automatiser la configuration initiale, les mises &agrave; jour et la maintenance continue de vos applications web, ce qui rend le processus de d&eacute;ploiement plus rapide et plus fiable en r&eacute;duisant les erreurs humaines.<\/p><p>L&rsquo;int&eacute;gration des outils d&rsquo;automatisation du d&eacute;ploiement de Kamal dans les pipelines CI\/CD am&eacute;liore encore l&rsquo;efficacit&eacute;. Ces pipelines favorisent l&rsquo;am&eacute;lioration continue et les mises &agrave; jour transparentes, permettant un flux ininterrompu du d&eacute;veloppement au d&eacute;ploiement.<\/p><p>L&rsquo;h&eacute;bergement VPS d&rsquo;Hostinger est id&eacute;alement adapt&eacute; &agrave; ces pratiques, offrant l&rsquo;assistant IA Kodee pour rationaliser l&rsquo;automatisation des scripts pour la gestion et la mise &agrave; l&rsquo;&eacute;chelle de vos applications web sans effort. Vous pouvez consulter Kodee pour obtenir des instructions sur l&rsquo;automatisation de votre flux de d&eacute;ploiement.<\/p><p>Par exemple, lancez un prompt VPS IA &laquo;&nbsp;Comment automatiser les sauvegardes du serveur de base de donn&eacute;es &agrave; l&rsquo;aide de Kamal ?&nbsp;&raquo;<\/p><p>Kodee vous fournira alors un guide complet &eacute;tape par &eacute;tape. Vous pouvez poser des questions compl&eacute;mentaires pour approfondir chaque &eacute;tape si vous avez besoin de plus de d&eacute;tails. Notre assistant IA peut &eacute;galement fournir des mod&egrave;les de code d&rsquo;application pour acc&eacute;l&eacute;rer le processus de configuration.<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.hostinger.com\/fr\/vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/public\" alt=\"\" class=\"wp-image-41471\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h3 class=\"wp-block-heading\" id=\"h-deployer-des-operations-simultanees-de-verrouillage-et-de-securite\">D&eacute;ployer des op&eacute;rations simultan&eacute;es de verrouillage et de s&eacute;curit&eacute;<\/h3><p>La gestion des op&eacute;rations simultan&eacute;es est essentielle lors du d&eacute;ploiement d&rsquo;applications web pour &eacute;viter les conflits et pr&eacute;server l&rsquo;int&eacute;grit&eacute; de vos applications. Kamal facilite cette t&acirc;che gr&acirc;ce &agrave; une fonction de verrouillage du d&eacute;ploiement, un m&eacute;canisme de coordination qui n&rsquo;autorise qu&rsquo;un seul d&eacute;ploiement &agrave; la fois. <\/p><p>Voici comment int&eacute;grer un verrou de d&eacute;ploiement dans vos strat&eacute;gies de d&eacute;ploiement Kamal :<\/p><p><strong>Avant le d&eacute;ploiement<\/strong><\/p><p>Lancez un verrou de d&eacute;ploiement pour emp&ecirc;cher le chevauchement des processus de d&eacute;ploiement &agrave; l&rsquo;aide de la commande <strong>kamal lock acquire -m &laquo;&nbsp;<strong>Your reason for locking<\/strong>&laquo;&nbsp;<\/strong>. Cette commande cr&eacute;e un r&eacute;pertoire <strong>kamal_lock <\/strong>sur le serveur principal, indiquant qu&rsquo;un processus de d&eacute;ploiement est en cours.<\/p><p><strong>Pendant le d&eacute;ploiement<\/strong><\/p><p>V&eacute;rifiez l&rsquo;&eacute;tat du verrou avec <strong>kamal lock status <\/strong>pour d&eacute;terminer qui a initi&eacute; le verrou et dans quel but, ainsi que la version en cours de d&eacute;ploiement. Vous obtiendrez peut-&ecirc;tre un r&eacute;sultat similaire &agrave; celui-ci :<\/p><pre class=\"wp-block-preformatted\">Locked by: A.N. Other on 2023-03-24 09:49:03 UTC\nVersion: 77f45c0686811c68989d6576748475a60bf53fc2\nMessage: Automatic deploy lock<\/pre><p>Cette sortie vous permet de rester inform&eacute; des activit&eacute;s de d&eacute;ploiement en cours et de vous assurer qu&rsquo;aucune op&eacute;ration conflictuelle n&rsquo;est men&eacute;e.<\/p><p><strong>Apr&egrave;s un d&eacute;ploiement r&eacute;ussi<\/strong><\/p><p>Terminez votre d&eacute;ploiement en lib&eacute;rant le verrou de d&eacute;ploiement avec <strong>kamal lock release<\/strong>. Cette action est cruciale pour nettoyer l&rsquo;environnement en vue de futures mises en &oelig;uvre et pour garantir des op&eacute;rations de d&eacute;ploiement continues.<\/p><h3 class=\"wp-block-heading\" id=\"h-utiliser-des-hooks-kamal\">Utiliser des hooks Kamal<\/h3><p>Kamal fournit un syst&egrave;me de hooks qui permet aux d&eacute;veloppeurs d&rsquo;ex&eacute;cuter des scripts personnalis&eacute;s &agrave; des points pr&eacute;d&eacute;finis du processus de d&eacute;ploiement, offrant ainsi une automatisation sur mesure et garantissant l&rsquo;int&eacute;grit&eacute; et la fiabilit&eacute; du d&eacute;ploiement. Il existe quatre types de hooks :<\/p><ul class=\"wp-block-list\">\n<li><strong>Hooks de pr&eacute;-connexion <\/strong>&ndash; ex&eacute;cut&eacute;s avant que Kamal ne prenne un verrou de d&eacute;ploiement et avant de se connecter aux h&ocirc;tes distants. Ces hooks sont utiles pour les t&acirc;ches de r&eacute;chauffement du DNS.<\/li>\n\n\n\n<li><strong><strong>Hook<\/strong>s de pr&eacute;construction <\/strong>&ndash; ex&eacute;cut&eacute;s avant le d&eacute;but du processus de construction, ils permettent d&rsquo;effectuer des validations pr&eacute;alables &agrave; la construction, telles que la v&eacute;rification des changements non valid&eacute;s ou l&rsquo;int&eacute;gration continue (CI).<\/li>\n\n\n\n<li><strong><strong>Hook<\/strong>s de pr&eacute;-d&eacute;ploiement <\/strong>&ndash; d&eacute;clench&eacute;s juste avant le d&eacute;but du d&eacute;ploiement, adapt&eacute;s aux contr&ocirc;les finaux tels que la v&eacute;rification de l&rsquo;ach&egrave;vement de l&rsquo;IC.<\/li>\n\n\n\n<li><strong><strong>Hook<\/strong>s post-d&eacute;ploiement <\/strong>&ndash; activ&eacute;s apr&egrave;s un hook de d&eacute;ploiement, de red&eacute;ploiement ou de retour en arri&egrave;re. Les hooks post-d&eacute;ploiement peuvent envoyer des notifications de d&eacute;ploiement ou enregistrer la nouvelle version aupr&egrave;s d&rsquo;un syst&egrave;me de gestion des performances des applications (APM).<\/li>\n<\/ul><p>Les scripts de ces hooks ont acc&egrave;s &agrave; une s&eacute;rie de variables d&rsquo;environnement <strong>KAMAL_*<\/strong>, qui fournissent un contexte d&eacute;taill&eacute; sur le d&eacute;ploiement, y compris des horodatages, des informations sur les utilisateurs, des d&eacute;tails sur la version et des listes d&rsquo;h&ocirc;tes. Si un script sort avec un statut diff&eacute;rent de z&eacute;ro, le processus de d&eacute;ploiement est interrompu afin d&rsquo;&eacute;viter que des erreurs potentielles ne se propagent.<\/p><p>Voici un exemple de cr&eacute;ation d&rsquo;un script de hook post-d&eacute;ploiement qui envoie une notification de d&eacute;ploiement &agrave; un chatbot dans Basecamp en utilisant les variables <strong>KAMAL_* :<\/strong><\/p><pre class=\"wp-block-preformatted\">#!\/usr\/bin\/env bash\ncurl -q -d \"content=[My App] ${KAMAL_PERFORMER} Rolled back to version ${KAMAL_VERSION}\" https:\/\/3.basecamp.com\/XXXXX\/integrations\/XXXXX\/buckets\/XXXXX\/chats\/XXXXX\/lines<\/pre><p>Ce script affiche un message indiquant qui a effectu&eacute; le retour en arri&egrave;re et vers quelle version.<\/p><p>Dans les situations o&ugrave; les hooks ne sont pas n&eacute;cessaires, vous pouvez les contourner en utilisant l&rsquo;option <strong>&ndash;skip_hooks <\/strong>lors des commandes de d&eacute;ploiement, ce qui emp&ecirc;che l&rsquo;ex&eacute;cution de ces scripts personnalis&eacute;s.<\/p><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2><p>Tout au long de ce guide, vous avez d&eacute;couvert ce qu&rsquo;est Kamal, ses avantages, et les &eacute;tapes pour d&eacute;ployer des applications web en utilisant Kamal sur un VPS Linux. Vous avez &eacute;galement appris des astuces de d&eacute;ploiement de Kamal, telles que l&rsquo;automatisation du flux de travail, la s&eacute;curisation des op&eacute;rations avec les verrous de d&eacute;ploiement, et l&rsquo;optimisation des processus avec les hooks de Kamal.<\/p><p>Alors que vous continuez &agrave; chercher des am&eacute;liorations pour vos applications web, pensez &agrave; utiliser l&rsquo;h&eacute;bergement VPS de Hostinger. Nos plans commencent &agrave; partir de seulement <strong>\u20ac5.99\/mois<\/strong>, chacun d&rsquo;entre eux &eacute;tant dot&eacute; d&rsquo;une s&eacute;rie de fonctionnalit&eacute;s qui vous permettront d&rsquo;am&eacute;liorer votre r&eacute;ussite.<\/p><p>Il s&rsquo;agit notamment d&rsquo;instantan&eacute;s gratuits en temps r&eacute;el, de sauvegardes hebdomadaires automatiques, que l&rsquo;acc&egrave;s &agrave; Kodee, notre assistant IA, chacun &eacute;tant con&ccedil;u pour compl&eacute;ter votre strat&eacute;gie de d&eacute;ploiement et stimuler les performances de votre projet.<\/p><p>Profitez de la force de l&rsquo;h&eacute;bergement VPS d&rsquo;Hostinger pour vos d&eacute;ploiements d&rsquo;applications Web aliment&eacute;es par Kamal. Lib&eacute;rez le plein potentiel de votre pr&eacute;sence en ligne en cliquant sur la banni&egrave;re ci-dessous !<\/p><h2 class=\"wp-block-heading\" id=\"h-deployer-des-applications-web-avec-kamal-faq\">D&eacute;ployer des applications Web avec Kamal &ndash; FAQ<\/h2><p>Cette section r&eacute;pondra aux questions les plus courantes sur la mani&egrave;re de d&eacute;ployer des applications web en utilisant Kamal.<\/p><div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1712513347549\"><h3 class=\"schema-faq-question\">Quelles sont les conditions pr&eacute;alables &agrave; l&rsquo;utilisation de Kamal pour d&eacute;ployer des applications Web ?<\/h3> <p class=\"schema-faq-answer\">Avant de d&eacute;ployer avec Kamal, assurez-vous que votre machine a Git install&eacute; pour le contr&ocirc;le de version, un acc&egrave;s SSH &agrave; votre serveur pour des connexions s&eacute;curis&eacute;es, et un environnement d&rsquo;application Rails avec les d&eacute;pendances n&eacute;cessaires r&eacute;solues. Ces pr&eacute;requis sont cruciaux pour un processus de d&eacute;ploiement transparent de Kamal.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1712513358818\"><h3 class=\"schema-faq-question\">Puis-je d&eacute;ployer diff&eacute;rents types d&rsquo;applications Web avec Kamal ?<\/h3> <p class=\"schema-faq-answer\">Oui, Kamal peut g&eacute;rer diff&eacute;rents types d&rsquo;applications web au-del&agrave; des applications Rails. Il fournit un syst&egrave;me de d&eacute;ploiement flexible adapt&eacute; &agrave; divers cadres de web apps, garantissant aux d&eacute;veloppeurs un d&eacute;ploiement efficace de leurs projets, quelle que soit la technologie sous-jacente.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1712513373448\"><h3 class=\"schema-faq-question\">Kamal est-il adapt&eacute; &agrave; la mise &agrave; l&rsquo;&eacute;chelle des applications Web ?<\/h3> <p class=\"schema-faq-answer\">Kamal est id&eacute;al pour la mise &agrave; l&rsquo;&eacute;chelle des web apps car il prend en charge le d&eacute;ploiement sur plusieurs h&ocirc;tes et s&rsquo;int&egrave;gre &agrave; un &eacute;quilibreur de charge, essentiel pour la distribution du trafic et la garantie d&rsquo;une haute disponibilit&eacute; &agrave; mesure que votre base d&rsquo;utilisateurs et votre trafic s&rsquo;accroissent.<\/p> <\/div> <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Le d&eacute;ploiement d&rsquo;une application web conteneuris&eacute;e peut souvent sembler d&eacute;courageant. Kamal est un outil con&ccedil;u pour rationaliser et simplifier le d&eacute;ploiement d&rsquo;applications web, rendant votre flux de travail plus efficace et plus fiable. Dans cet article, vous apprendrez &agrave; d&eacute;ployer des applications web &agrave; l&rsquo;aide de Kamal sur un serveur priv&eacute; virtuel (VPS). Nous vous [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/fr\/tutoriels\/deployer-applications-web-avec-kamal\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":355,"featured_media":31083,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"Comment D\u00e9ployer des Applications Web avec Kamal en %currentyear%","rank_math_description":"Apprenez \u00e0 d\u00e9ployer des applications web en utilisant Kamal : 1. Pr\u00e9parer le d\u00e9ploiement 2. Installer et d\u00e9ployer avec Kamal et plus.","rank_math_focus_keyword":"d\u00e9ployer des applications web avec Kamal","footnotes":""},"categories":[4760],"tags":[],"class_list":["post-31082","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vps"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/deployer-applications-web-avec-kamal","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/como-implementar-aplicaciones-web-con-kamal","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/cara-deploy-aplikasi-web-menggunakan-kamal","default":0},{"locale":"en-UK","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/como-implementar-aplicaciones-web-con-kamal","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/como-implementar-aplicaciones-web-con-kamal","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/como-implementar-aplicaciones-web-con-kamal","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/deploy-web-apps-using-kamal","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/deploy-web-apps-using-kamal","default":0}],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/31082","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/users\/355"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/comments?post=31082"}],"version-history":[{"count":7,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/31082\/revisions"}],"predecessor-version":[{"id":45058,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/31082\/revisions\/45058"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media\/31083"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media?parent=31082"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/categories?post=31082"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/tags?post=31082"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}