> ## Content Index
> Fetch the complete content index at: https://kmartin.io/llms.txt
> Use this file to discover other available public pages before exploring further.

# Déployer une application NGINX + PHP avec Portainer 🚀
- URL: https://kmartin.io/deployer-une-application-nginx-php-avec-portainer/
- Published: 2026-01-14T11:23:31.000Z
- Updated: 2026-01-14T11:23:31.000Z
- Description: Apprenez à déployer votre première stack NGINX + PHP avec Portainer. Ce guide vous montre comment créer, gérer et mettre à jour vos services Docker via l’interface graphique, en conservant le contrôle total sur votre stack 🚀
- Author: Kévin Martin
- Tags: Articles, Déploiement, Développement, Docker

Après avoir compris et utilisé Docker Compose pour déployer notre première application, il est temps de voir **Portainer en action**. Ce tutoriel montre comment déployer exactement la même stack **NGINX + PHP** via l’interface graphique, sans perdre le contrôle sur tes services.

👉 Si tu n’as pas encore suivi le précédent article, je te conseille de lire :

- [Déployer une première application avec Docker Compose](https://kmartin.io/deployer-une-premiere-application-avec-docker-compose/)

---

## Pourquoi utiliser Portainer ?

Portainer est une interface web qui permet de gérer tes containers, images et stacks Docker facilement. Ses avantages :

- Interface graphique intuitive
- Déploiement rapide de stacks via fichiers `docker-compose.yml`
- Suivi des logs et des containers
- Redémarrage et mise à jour simplifiés

Même si Docker Compose reste la **source de vérité**, Portainer rend la gestion de tes services beaucoup plus confortable, surtout sur un serveur partagé ou pour présenter tes projets.

---

## Structure du projet

Nous allons réutiliser la même structure que précédemment :

```
nginx-php/
├── docker-compose.yml
├── nginx/
│   └── default.conf
└── app/
    └── index.php

```

- `docker-compose.yml` : définition de la stack
- `nginx/default.conf` : configuration NGINX
- `app/index.php` : simple page PHP pour tester

Cette cohérence permet de passer **sans effort** de la CLI à l’interface graphique.

---

## Préparer Portainer

1️⃣ Connecte-toi à ton Portainer via ton navigateur :

```
http://IP_DU_SERVEUR:9000

```

2️⃣ Sélectionne l’environnement Docker local.  
3️⃣ Dans le menu, va sur **Stacks** \> **Add stack**.

---

## Créer la stack

1️⃣ Donne un nom à ta stack, par exemple `nginx-php`.  
2️⃣ Copie le contenu du fichier `docker-compose.yml` dans le champ **Web editor**.  
3️⃣ Clique sur **Deploy the stack**.

Portainer va automatiquement :

- créer les services NGINX et PHP
- monter les volumes
- démarrer les containers

En quelques secondes, ta stack est opérationnelle !

---

## Vérifier le déploiement

- Dans **Stacks**, clique sur `nginx-php` \> **Services** pour voir NGINX et PHP.
- Clique sur **Logs** pour suivre les messages.
- Ouvre ton navigateur :

```
http://IP_DU_SERVEUR:8080

```

Tu devrais voir ton message PHP et la page `phpinfo()` 🎉

---

## Mettre à jour et gérer la stack

Portainer rend les mises à jour simples :

- Pour modifier un service, édite le `docker-compose.yml` directement dans l’UI
- Clique sur **Update the stack**
- Les services seront redéployés proprement

Autre avantage : tu peux **arrêter ou redémarrer les services individuellement**, ou **remonter toute la stack** en un clic.

---

## Bonnes pratiques

- Toujours garder une copie de ton `docker-compose.yml` en local
- Ne jamais modifier les containers manuellement sans passer par Portainer ou le YAML
- Utiliser des volumes pour les données persistantes
- Nommer tes stacks et services de manière claire

---

## Conclusion

Avec Portainer, tu as désormais une **interface graphique puissante** pour gérer tes stacks Docker, tout en conservant le contrôle grâce à Docker Compose. Cette méthode est parfaite pour des déploiements rapides, la maintenance et le suivi des services.

Dans les prochains articles, nous pourrons explorer :

- La mise à jour d’une stack Portainer sans downtime
- L’ajout de services supplémentaires dans une stack existante
- Les bonnes pratiques de sécurité sur Portainer

🚀 Tu es maintenant capable de déployer et gérer une stack NGINX + PHP de bout en bout, en CLI ou via Portainer !