Prestashop installation rapide
Ce guide vous permet de déployer une instance PrestaShop en local ou sur un serveur Linux (VPS) en quelques minutes, via Docker.
⚠️ Cette configuration utilise une base de données MySQL de test, non sécurisée, et une installation automatique non adaptée à la production.
Elle est idéale pour du développement local, des tests de modules ou des démonstrations temporaires.
Prérequis
- Serveur Linux avec Docker + Docker Compose (je recommande un VPS contabo, meilleur rapport qualité/prix)
- Accès root
- Port libre (ex. : 8081)
- Firewall (ufw) actif
Créer un dossier pour PrestaShop
mkdir ~/prestashop
cd ~/prestashopContenu du fichier
docker-compose.yml
services:
mysql:
container_name: prestashop-mysql
image: mysql:5.7
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: admin
MYSQL_DATABASE: prestashop
volumes:
- mysql_data:/var/lib/mysql
networks:
- prestanet
prestashop:
container_name: prestashop
image: prestashop/prestashop:latest
restart: unless-stopped
depends_on:
- mysql
ports:
- "8081:80"
environment:
DB_SERVER: prestashop-mysql
DB_NAME: prestashop
DB_USER: root
DB_PASSWD: admin
PS_INSTALL_AUTO: 1
PS_DOMAIN: 123.123.123.123
ADMIN_MAIL: [email protected]
ADMIN_PASSWD: MonMotDePasseUltraSecurise123
volumes:
- prestashop_data:/var/www/html
networks:
- prestanet
volumes:
mysql_data:
prestashop_data:
networks:
prestanet:Autoriser le port dans le pare-feu
ufw allow 8081/tcp
ufw reloadLancer PrestaShop
docker compose up -dRenommer le dossier admin
PrestaShop bloque l’accès au back-office si le dossier /admin n’a pas été renommé.
Pour le faire automatiquement avec un nom aléatoire :
docker exec prestashop bash -c 'cd /var/www/html && newadmin="admin$(cat /dev/urandom | tr -dc a-z0-9 | head -c24)" && mv admin "$newadmin" && echo "$newadmin"'Copiez le nom retourné, c’est votre URL de back-office.
Accéder à la boutique
- Front-office : http://123.123.123.123:8081
- Le back-office se trouve à une URL générée automatiquement, par exemple :http://123.123.123.123:8081/adminxyz123456789/
Connexion au back-office
Utilisez les identifiants définis dans le docker-compose.yml
- Email : [email protected]
- Mot de passe : MonMotDePasseUltraSecurise123
Passer en production : ce qu’il faut sécuriser
La configuration ci-dessus est faite pour tester vite. Avant d’ouvrir la boutique au public, durcissez au minimum ces points :
- Mots de passe : remplacez
adminet le mot de passe d’exemple par des chaînes longues et uniques (idéalement via un fichier.envnon versionné). - Base de données : préférez
mysql:8.0oumariadb:11à l’imagemysql:5.7(en fin de vie), et n’exposez jamais le port MySQL sur Internet. - HTTPS : placez un reverse-proxy (Traefik, Nginx ou Caddy) devant le conteneur pour gérer un certificat Let’s Encrypt et servir la boutique en
https://. - Sauvegardes : planifiez un
mysqldumprégulier du volumemysql_dataet une copie du volumeprestashop_data. - Pare-feu : avec
ufw, n’ouvrez que les ports 80/443 et fermez le 8081 une fois le proxy en place.
Dépannage rapide
- La page reste blanche / 500 : laissez 30 à 60 s à l’installation auto, puis consultez
docker compose logs -f prestashop. - Erreur de connexion MySQL : vérifiez que
DB_SERVERcorrespond bien aucontainer_namedu service MySQL. - Boucle de redirection : assurez-vous que
PS_DOMAINcorrespond à l’adresse réellement utilisée (IP ou nom de domaine).
Pour aller plus loin
Une fois votre PrestaShop en ligne, automatisez ce qui vous fait perdre du temps : la création automatique de fiches produits, les automatisations IA pour PrestaShop 9, ou l’usage de ChatGPT avec PrestaShop.
FAQ
Combien de temps prend l’installation ?
Avec Docker, comptez quelques minutes : le temps de télécharger les images et de laisser l’installation automatique (PS_INSTALL_AUTO) se dérouler.
Peut-on installer PrestaShop sans Docker ?
Oui, via une installation classique (LAMP) ou l’auto-installeur de votre hébergeur. Docker reste la voie la plus rapide et reproductible pour un environnement de test.
Cette méthode convient-elle à une vraie boutique ?
Telle quelle, non : elle vise le développement et les tests. Pour la production, appliquez les points de sécurisation ci-dessus (mots de passe, HTTPS, sauvegardes, base à jour).




