Prestashop
1. Fichier docker-compose.yml (à coller dans Portainer)
version: '3.8'
services:
db:
image: mysql:5.7
container_name: prestashop_db
environment:
MYSQL_ROOT_PASSWORD: XXXXXX # change me
MYSQL_DATABASE: prestashop
MYSQL_USER: prestashop
MYSQL_PASSWORD: XXXXX # change me
volumes:
- /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/db:/var/lib/mysql
networks:
- prestashop_network
restart: unless-stopped
prestashop:
image: prestashop/prestashop:latest
container_name: prestashop_web
depends_on:
- db
environment:
DB_SERVER: db
DB_USER: prestashop
DB_PASSWD: XXXXX # change me
DB_NAME: prestashop
PS_DEV_MODE: 0
PS_INSTALL_AUTO: 0
PS_DOMAIN: domain.tld # change me
PS_FOLDER_ADMIN: admin10665839 # La suite de chiffres est arbitraire mais doit matcher avec PS_FOLDER_INSTALL
PS_FOLDER_INSTALL: install10665839 # la partie numérique compte doit matcher
ports:
- "8999:80"
volumes:
- /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/data:/var/www/html
- /srv/dev-disk-by-uuid-7fe6601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/data/admin-dev:/var/www/html/admin-dev
networks:
- prestashop_network
restart: unless-stopped
networks:
prestashop_network:
driver: bridge
2. Déploiement et installation
Lancer le stack
- Dans Portainer, collez le
docker-compose.yml et déployez.
Suivre les logs
- Allez dans Containers >
prestashop_web > Logs pour suivre l’avancement, notamment la fin d'initialisation de la db.
Accéder à l’installation
- URL :
http://[IP_DU_SERVEUR]:8999/install10665839 (pas via le domaine, sinon risque de plantage).
3. Configuration de l’installation
Étape "Configuration du système"
- Adresse du serveur de base de données : doit être l'ip interne à docker du conteneur db
- Préfixe des tables :
ps_
- Patience : L’installation peut prendre plusieurs minutes.
4. Finalisation
Supprimer le dossier install
- Dans le terminal du conteneur
prestashop_web :
rm -rf /var/www/html/install10665839
Désactiver le SSL (si nécessaire)
- Trouvez le préfixe des tables (ex:
ps_) :
mysql -u prestashop -pXXXXX -h db prestashop -e "SHOW TABLES;"
- Désactivez le SSL :
mysql -u prestashop -pXXXXX -h db prestashop -e "UPDATE ps_configuration SET value = '0' WHERE name = 'PS_SSL_ENABLED';"
mysql -u prestashop -pXXXXX -h db prestashop -e "UPDATE ps_configuration SET value = '0' WHERE name = 'PS_SSL_ENABLED_EVERYWHERE';"
Redémarrer le conteneur
- Dans Portainer, redémarrez
prestashop_web.
5. Accès final
- Admin :
http://[IP_DU_SERVEUR]:8999/admin10665839
- Frontoffice :
http://[IP_DU_SERVEUR]:8999