Este proyecto proporciona una manera automatizada de instalar y ejecutar PrestaShop usando Docker. Incluye un script de instalación CLI, un Dockerfile y un archivo docker-compose.yml para configurar un entorno completo de PrestaShop con MySQL y phpMyAdmin.

Descárgalo desde GitHub

https://github.com/kaisarcode/prestashop-docker-installer


Características

  • Instalación automatizada: Descarga e instala la versión especificada de PrestaShop.
  • Entorno personalizable: Configura los ajustes de PrestaShop a través del archivo .env.
  • Configuración con Docker: Incluye contenedores de MySQL, phpMyAdmin y Apache.
  • Base de datos de geolocalización incluida: Viene con la base de datos GeoLite2 para soporte de geolocalización.
  • Directorio de administración seguro: Renombra el directorio de administración para mayor seguridad.

Requisitos previos

Asegúrate de tener instalado:


Comenzando

1. Clona el repositorio

git clone git@github.com:kaisarcode/prestashop-docker-installer.git cd prestashop-docker-installer

2. Configura las variables de entorno

Edita el archivo .env existente para ajustar la configuración a tus necesidades. Algunos ejemplos de variables incluyen:

PROJID="mystore" PSVERSION=8.2.1 PSCONTAINER="ps_${PROJID}" DBCONTAINER="db_${PROJID}" MACONTAINER="ma_${PROJID}" PSPORT=8888 DBPORT=3307 MAPORT=9999 DBNAME="prestashop" DBPASS="admin" DBPREFIX="ps_" PSDOMAIN="localhost" PSLANG="es" PSNAME="MyStore" PSEMAIL="demo@prestashop.com" PSPASS="demodemo" PSADMINDIR="admin123"

3. Ejecuta el script de instalación

Asegúrate de que el script de instalación sea ejecutable:

chmod +x installer.sh

Ejecuta el instalador:

./installer.sh

Este script hará lo siguiente:

  • Limpiar cualquier instalación previa.
  • Descargar y descomprimir la versión especificada de PrestaShop.
  • Construir y arrancar los contenedores Docker.
  • Instalar PrestaShop vía CLI con tu configuración.
  • Renombrar el directorio de administración.
  • Instalar la base de datos de geolocalización GeoLite2.
  • Establecer los permisos adecuados.

Accediendo a tu entorno PrestaShop


Estructura del proyecto

. ├── assets/ # Recursos adicionales (incluye base de datos GeoLite2) ├── www/ # Archivos fuente de PrestaShop (Autogenerados) ├── installer.sh # Script de instalación ├── Dockerfile # Dockerfile para el contenedor de PrestaShop ├── docker-compose.yml # Configuración de Docker Compose └── .env # Configuración de variables de entorno

Personalización

  • Versión de PHP: Cambia el ARG PHP_VERSION en el Dockerfile para usar otra versión de PHP.
  • Directorio de administración: Modifica PSADMINDIR en .env para renombrar la carpeta admin por seguridad.
  • Puertos y contenedores: Ajusta los puertos y nombres de contenedores en .env según necesites.

Solución de problemas

  • La base de datos no inicia: Verifica que el contenedor MySQL esté corriendo (docker ps) y las credenciales en .env.
  • Conflictos de puertos: Asegúrate que los puertos definidos en .env estén libres en tu máquina.
  • Tiempos de espera: El instalador espera hasta 30 segundos a que la base de datos esté disponible; aumenta el tiempo en el script si es necesario.

Licencia

License: ISC

Este proyecto está licenciado bajo la Licencia ISC. Consulta el archivo LICENSE para más detalles.


Contribuciones

No dudes en abrir issues o enviar pull requests para mejorar este proyecto.


Tags

prestashop docker php mysql phpmyadmin automation ecommerce geolocation webdevelopment devops opensource cliinstallation deployment


Invítame un café en cafecito.app