Prestashop
1. Préparation des dossiers avec les bonnes permissions
Notez votre docker PUID:PGID, puis:
mkdir -p /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/{db,data/admin-dev}
chown -R 998:100 /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/
chmod -R 775 /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/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: 01664892ganjah12!
MYSQL_DATABASE: prestashop
MYSQL_USER: prestashop
MYSQL_PASSWORD: 01664892ganjah12
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: 01664892ganjah12
DB_NAME: prestashop
PS_DEV_MODE: 0
PS_INSTALL_AUTO: 0
PS_DOMAIN: emberchains.steph.click
PS_FOLDER_ADMIN: admin10665839
PS_FOLDER_INSTALL: install10665839
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-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Prestashop/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.ymlet 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. Créer le dossier manuellement
Sans cette action, docker n'aura pas les permissions pour créer les dossier d'installation.
Cette étape n'est pas nécessaire si vous utilisez des volumes docker.
- Accédez au terminal du conteneur
prestashop_web(via Portainer). - Exécutez :
mkdir -p /var/www/html/admin-dev
chown -R www-data:www-data /var/www/html/admin-dev
4. 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 : .
5. Finalisation
Supprimer le dossier install
- Dans le terminal du conteneur
prestashop_web:rm -rf /var/www/html/install10665839
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.
6. Accès final
- Admin :
http://[IP_DU_SERVEUR]:8999/admin10665839 - Frontoffice :
http://[IP_DU_SERVEUR]:8999