{"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&#8217;applications conteneuris\u00e9es"},"content":{"rendered":"<p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">&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\"><div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                   Qu'est-ce que Kamal ?\n                <\/p>\n            <\/div>\n            <p class=\"protip__content\">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><\/div>\n\n\n\n<\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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>\n<\/div><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">Cela rend Kamal accessible &agrave; partir de n&rsquo;importe quel r&eacute;pertoire de votre serveur.<\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">Pour les d&eacute;ploiements ult&eacute;rieurs, utilisez :<\/p><pre class=\"wp-block-preformatted\">kamal deploy<\/pre><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">Par exemple, lancez un prompt VPS IA &ldquo;Comment automatiser les sauvegardes du serveur de base de donn&eacute;es &agrave; l&rsquo;aide de Kamal ?&rdquo;<\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">Voici comment int&eacute;grer un verrou de d&eacute;ploiement dans vos strat&eacute;gies de d&eacute;ploiement Kamal :<\/p><p class=\"wp-block-paragraph\"><strong>Avant le d&eacute;ploiement<\/strong><\/p><p class=\"wp-block-paragraph\">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 &ldquo;<strong>Your reason for locking<\/strong>&ldquo;<\/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 class=\"wp-block-paragraph\"><strong>Pendant le d&eacute;ploiement<\/strong><\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\"><strong>Apr&egrave;s un d&eacute;ploiement r&eacute;ussi<\/strong><\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">Ce script affiche un message indiquant qui a effectu&eacute; le retour en arri&egrave;re et vers quelle version.<\/p><p class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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":1},{"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-PH","link":"https:\/\/www.hostinger.com\/ph\/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-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/deploy-web-apps-using-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},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/como-implementar-aplicaciones-web-con-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}],"_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}]}}