Solución de problemas
Los errores que puedes encontrar al instalar, construir o editar el sitio, qué causa cada uno y cómo solucionarlo.
Docker no se está ejecutando
failed to connect to the docker API at unix:///…/docker.sock; check if the path is correct and if the daemon is runningLas versiones antiguas de Docker muestran "Cannot connect to the Docker daemon" en su lugar. En ambos casos, el motor de Docker no está iniciado.
Abre Docker Desktop
Inicia Docker Desktop y espera a que indique que el motor está en ejecución. En Linux, inicia el servicio:
sudo systemctl start docker.Comprueba que Docker responde
Terminaldocker infoResultado esperado: Muestra una sección Server en lugar de un error.
Vuelve a ejecutar tu comando
docker build -t analytics-landing ., y luegodocker run -p 3030:3030 analytics-landing.
Un puerto ya está en uso
Bind for 0.0.0.0:3030 failed: port is already allocated
ports are not available: exposing port TCP 0.0.0.0:3030 … bind: address already in use
Error: listen EADDRINUSE: address already in use :::3030Las dos primeras líneas vienen de Docker, la última de yarn dev o yarn start. Otro programa ya escucha en el puerto 3030: a menudo una ejecución anterior de este sitio, o el servidor de otro proyecto.
Averigua qué ocupa el puerto
En macOS o Linux:
Terminallsof -i :3030En Windows, en PowerShell:
Terminalnetstat -ano | findstr :3030Detenlo
Cierra ese programa o detén la ejecución anterior: Ctrl+C en su terminal, o
docker stopcon el ID del contenedor que muestradocker ps. Después vuelve a iniciar el sitio.O usa otro puerto
Conserva el otro programa e inicia el sitio en un puerto libre, aquí
3041:Cómo lo ejecutas Comando Docker docker run -p 3041:3030 analytics-landingServidor de desarrollo yarn dev -p 3041Versión de producción yarn start -p 3041Con Docker, cambia solo el número a la izquierda de
-p: el sitio dentro del contenedor siempre escucha en3030.Resultado esperado: El sitio responde en localhost:3041/enLocal.
La construcción falla
docker build se detiene con "failed to solve" y el paso que falló; yarn build se detiene con el propio error. Las causas habituales:
- Sin conexión o tiempo agotado: la construcción descarga las dependencias y las fuentes DM Sans, Noto Sans Arabic y Almarai desde Google Fonts. Un mensaje como "Failed to fetch
DM Sansfrom Google Fonts." significa que la construcción no pudo acceder a ellas. Vuelve a ejecutar el comando cuando tengas conexión; con Docker, los pasos terminados se guardan en caché. - `Invalid URL`:
NEXT_PUBLIC_SITE_URLno es una dirección completa. Escríbela conhttps://, comohttps://www.your-domain.com. - No space left on device: libera espacio en Docker Desktop o revisa cuánto usa Docker con
docker system df. - Falla en el mismo paso cada vez: vuelve a construir sin la caché.
Nextjs-landing-page-template-2docker build --no-cache -t analytics-landing .Sin Docker, elimina las carpetas node_modules y .next, y luego vuelve a ejecutar yarn install y yarn build.
Yarn dice que su versión es 1.22
This project's package.json defines "packageManager": "yarn@4.8.1…". However the current global version of Yarn is 1.22…El proyecto fija Yarn 4 a través de Corepack. Este mensaje significa que Corepack aún no está activado, así que respondió un Yarn global antiguo.
corepack enableLuego vuelve a ejecutar yarn install. Usa Yarn en lugar de npm: yarn.lock es lo que mantiene tu instalación en las versiones con las que se probó la plantilla.
No se encuentra el comando corepack
corepack: command not foundNode.js 25 y posteriores ya no incluyen Corepack. Instálalo una vez con npm y luego actívalo:
npm install -g corepack
corepack enableLuego vuelve a ejecutar yarn install. Los mismos dos comandos solucionan yarn: command not found.
Node.js es demasiado antiguo
You are using Node.js 18.20.4. For Next.js, Node.js version ">=20.9.0" is required.Next.js 16 necesita Node.js 20.9 o posterior. Comprueba tu versión con node -v. Instala Node.js 22 o 24, abre una terminal nueva, ejecuta corepack enable de nuevo y luego yarn install y yarn dev.
Con Docker esto no se aplica: la imagen incluye su propio Node.js 24.
Un ajuste cambiado no hace nada
NEXT_PUBLIC_SITE_URL y los demás valores NEXT_PUBLIC_ se compilan en el sitio cuando se construye. Cambiar uno no cambia nada hasta que se vuelve a construir el sitio.
| Cómo lo ejecutas | Después de cambiar un valor |
|---|---|
yarn dev | Cámbialo en .env.local, detén el servidor y vuelve a ejecutar yarn dev. |
yarn build y yarn start | Cámbialo en .env.local, vuelve a ejecutar yarn build y luego yarn start. |
| Docker | Vuelve a construir la imagen con el valor como --build-arg. La construcción de la imagen ignora .env y .env.local. |
| Vercel | Cámbialo en Environment Variables del proyecto y vuelve a desplegar. |
yarn start falla o muestra una versión antigua
Could not find a production build in the '.next' directory. Try building your app with 'next build' before starting the production server.yarn start sirve la última versión de producción construida, desde la carpeta .next. Ejecuta yarn build primero, y de nuevo después de cada cambio.
Si el sitio muestra errores que no coinciden con tu código, a menudo después de cambiar la versión de una dependencia o BUILD_STANDALONE, borra la carpeta .next y construye de nuevo:
Nextjs-landing-page-template-2rm -rf .next
yarn buildEn Windows, en PowerShell, bórrala con Remove-Item -Recurse -Force .next.
Un formulario dice que se envió, pero no llega nada
Así es como se entrega la plantilla. Los formularios validan lo que escriben los visitantes y muestran su mensaje de éxito, pero no envían nada a ninguna parte hasta que conectes cada uno que conserves a tu propio servicio.
Un tema de color nuevo no aparece en desarrollo
Con yarn dev, un panel flotante te permite probar los cuatro temas de color, y el navegador recuerda el que elegiste allí. Esa elección prevalece sobre el tema definido en el código. Elige el mismo tema en el panel, o borra los datos del sitio para localhost:3030 en tu navegador.
Una versión de producción, con yarn start o Docker, nunca muestra el panel y siempre usa el tema definido en el código.
El sitio se abre en árabe
Abrir / envía al visitante a /ar cuando su navegador prefiere el árabe, y a /en en caso contrario. Elige el otro idioma en el menú de idioma del encabezado, o abre /en directamente.
Un enlace no lleva a ninguna parte
Algunos enlaces del pie de página, los iconos de redes sociales y los enlaces sociales de la página de contacto apuntan a marcadores #. Es a propósito: te toca apuntarlos a tus propias páginas y perfiles. Los enlaces del encabezado, de precios, del blog y de contacto, y los botones de registro ya funcionan.
La carpeta se ve diferente
Ejecuta los comandos dentro de la carpeta en la que se extrae el ZIP, Nextjs-landing-page-template-2. Contiene Dockerfile, package.json, yarn.lock, messages, public y src. Si falta el comando unzip, extráelo con tu gestor de archivos; algunas herramientas añaden una carpeta extra con el nombre del ZIP, así que entra en la interior.