Desarrollo local nativo

Este documento describe la vía de desarrollo local admitida para WebBlocks CMS utilizando PHP, Composer, Nginx, MySQL o MariaDB y Redis instalados localmente. Las herramientas locales basadas en contenedores ya no forman parte del flujo de trabajo del proyecto.

URL local

Utilice HTTPS de confianza y dominios .test para los flujos de trabajo en el navegador.

  • URL del CMS: https://webblocks-cms.test
  • Admin: https://webblocks-cms.test/webadmin
  • Instalador: https://webblocks-cms.test/install

php artisan serve sigue siendo útil para comprobaciones rápidas de CLI o de rutas, pero el destino normal del navegador debe ser la configuración de confianza de Nginx/PHP-FPM indicada más arriba.

Comprobación de preparación

Ejecute:

composer native:doctor

El comando doctor comprueba la preparación del entorno de ejecución local sin instalar servicios ni modificar archivos locales.

Comprobaciones manuales útiles:

php -v
composer --version
nginx -t
mysql --version
redis-cli ping

En las instalaciones de Homebrew para Apple Silicon, los archivos de servicio y los registros suelen encontrarse en /opt/homebrew. En las instalaciones de Homebrew para Intel, suelen encontrarse en /usr/local.

Instalación desde cero

composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan storage:link

Abra https://webblocks-cms.test/install para utilizar el asistente en el navegador cuando la instalación aún no esté completa.

Entorno

Valores típicos en local nativo:

APP_ENV=local
APP_URL=https://webblocks-cms.test
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=webblocks_cms
DB_USERNAME=webblocks_cms
DB_PASSWORD=
CACHE_STORE=database
SESSION_DRIVER=database
QUEUE_CONNECTION=sync
CMS_BACKUP_EXECUTION=auto

Utilice una base de datos y un usuario locales separados para la instalación del CMS. Si su equipo ya tiene una instancia de MySQL/MariaDB ocupada, utilice un puerto distinto y los valores de .env correspondientes.

Copias de seguridad y restauraciones

Los comandos de copia de seguridad y de restauración utilizan las CLI locales de base de datos en modo nativo:

  • Las copias de seguridad de MySQL/MariaDB requieren mysqldump o mariadb-dump.
  • Las restauraciones de MySQL/MariaDB requieren mysql o mariadb.
  • Las copias de seguridad y restauraciones de SQLite utilizan rutas PHP/PDO.

CMS_BACKUP_EXECUTION=auto y CMS_BACKUP_EXECUTION=direct se resuelven ambos como ejecución directa de la CLI local para MySQL/MariaDB. El proyecto no requiere ningún comando de contenedor para la copia de seguridad ni para la restauración.

Comprobación rápida (smoke check)

Después de reiniciar servicios, de una restauración o de cambios en el entorno, ejecute:

composer native:smoke

Para pruebas específicas:

php artisan test --filter=PluginCatalogBrowserTest
composer test:release-fast
composer format:changed

Resolución de problemas

Si el navegador llega al sitio equivocado, confirme que el bloque de servidor de Nginx es el propietario de webblocks-cms.test, que el certificado es de confianza y que /etc/hosts apunta el dominio a 127.0.0.1.

Si los comandos de base de datos fallan, confirme DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME y DB_PASSWORD en .env y, a continuación, ejecute:

php artisan config:clear
php artisan migrate:status

Si las funciones basadas en Redis fallan, confirme que el servicio local de Redis está en ejecución:

redis-cli ping