Craft Nitro y Devkinsta Review para el desarrollo local de WordPress


Una de las cosas interesantes de mi trabajo como educador para los desarrolladores de los deliciosos cerebros es que a veces puedo probar cosas nuevas que nunca podría descubrir. En los últimos meses, hemos probado dos nuevos entornos de desarrollo locales: Craft Nitro y Devkinsta. Craft Nitro Craft Nitro es un entorno de desarrollo local alimentado por Docker de los detrás de Craft CMS. Si nunca ha oído hablar de Craft CMS, es un CMS de código abierto construido en el marco PHP YII, que utiliza ramita para plantillas y el marco Vue JavaScript que alimenta el tablero. Craft CMS (inicialmente llamado Blocks CMS) fue creado por Pixel & Tonic, una compañía de desarrollo de software que creó los suplementos más populares para ExpressionNgine CMS. Sin embargo, debido a los cambios que Ellislabs (la compañía detrás de Expressionngine) trajo al CMS, Pixel & Tonic decidió construir un competidor.
¡Y pensaste que WordPress tiene un drama! Los desarrolladores detrás de CRAFT CMS también han decidido construir y lanzar su propio entorno de desarrollo local, adaptado explícitamente a los desarrolladores CMA CMS. Se lanzó oficialmente a principios de 2020 y se construyó en Multipass, una aplicación creada por Canonical, las que están detrás de Ubuntu. Multipass ofrece una plataforma de virtualización similar a Vigrant con Virtual Box o Docker, pero es más fácil de usar y configurar y usar menos recursos. Desafortunadamente, en ese momento, Multipass tenía una serie de errores que frustraban a los usuarios, por lo que decidieron moverse en Docker.
Es una pena porque creo que Multipass tiene el potencial de ser lo siguiente importante en los entornos de desarrollo locales.Solo necesita algo de tiempo para madurar como plataforma.Debido a que CRANT CMS y WordPress tienen requisitos técnicos similares, pensamos que podría ser interesante ver si Nitro funcionará como un entorno local de desarrollo de WordPress.Instalar y configurar Craft Nitro Lo primero sobre Nitro es que es bastante difícil de configurar.Todo se detalla en las instrucciones de instalación, pero primero deberá instalar Docker solo.Dependiendo del sistema operativo que use, el nivel de dificultad puede variar.
Una vez que haya instalado Docker, hay algunas opciones de instalación alternativas, según el sistema operativo. Si está en MacOS o Linux, puede ejecutar un comando de terminal único para instalar Nitro. Bash <(curl -sls http://installer.getnitro.sh) Este descarga y ejecuta el script de instalación, que descarga e instala el nitro ejecutable. [Correo electrónico protegido] : ~ $ Bash <(curl -sls http://installer.getnitro.sh) Descarga del paquete https://github.com/craftcms/nitro/releases/download/2.0.7/nitro_linux_x86_64 .tar.gz a /home/jonathan/temp_nitro_extract/nitro_linux_x86_64.tar.gz changlog.md License.md Readme.md Nitro Descargar. ============================================= ====== ===== El script se ejecutó al usuario WHI para escribir/usr/local/bin. Para completar la instalación, los siguientes comandos deben ejecutarse manualmente: ====================================== ======================= Sudo Cp ./nitro/usr/local/bin/nitro nitro init -a cierto director dirigiendo sudo cp ./nitro/usr /local/bin/nitro. Esto permite que cualquier sistema normal ejecute el ejecutable nitro.
En MacOS, también tiene la opción de instalar Nitro a través de Homebrew. Los usuarios de Windows tienen un conjunto de pasos de instalación un poco más involucrado, utilizando el WSL 2, así que verifique el documento de instalación. Luego ejecute nitro init para inicializar el entorno nitro. El proceso le hace algunas preguntas sobre la configuración ambiental específica que desea y establece todo. [correo electrónico protegido] : ~ $ nitro init Configuración de nitro … ¿te gustaría usar mysql [y/n]? y Seleccione la versión de MySQL 1. 8.0 2. 5.7 3. 5.6 Ingrese su selección: 1 ¿Le gustaría usar PostgressQL [y/N]? n ¿Te gustaría usar Redis [Y/N]? n Verificación nitro … … creando red ✓ … Imagen pulir ✓ … Creación de volumen ✓ … creando proxy ✓ Verificación de red … ✓ Comprobación de red de red … ✓ Bases de datos de comprobación de Proxy Ready … 8.0 ✓ Comprobación de servicios. .. … Comprobación del servicio DynamodB ✓ … Comprobación del servicio Magehog ✓ … Verificación del servicio Redis ✓ Comprobación de proxy …… Proxy ✓ Upding Hosts Archivos (puede ser propietario de su contraseña)… Obtener el certificado del sitio raíz de Nitro ✓ Instalación (Es posible que se le solicite su contraseña) Nitro Certis ahora ha confiado 🔒 ¡Nitro está listo! 🚀 Agregar o crear un sitio Nitro Una vez que haya instalado e inicializado Nitro, puede ejecutar el comando Nitro Add en cualquier directorio de proyecto. Esto le preguntará qué nombres de host desea usar para el sitio, así como qué versión de PHP desea usar. También le preguntará si desea crear una base de datos y preguntarle a su nombre de base de datos. Una vez que tenga todos los datos que necesita, continuará y configurará el sitio para usted.
[Correo electrónico protegido] : ~ $ cd/desarrollo/sitios/nuevo sitio [correo electrónico protegido] : ~ $ nitro agregue sitio … Ingrese el nombre de host [new-site.nitro]: ✓ Configuración del nombre de host en el nombre de host en New-Site.nitro ✓ Agregar sitio ~/desarrollo/sitios web/nuevo sitio Ingrese el techo web para el sitio [web]:/✓ usando Webroot/elija una versión de PHP: 5. 7.1 6. 7.0 Ingrese su selección: 2 ✓ Configuración PHP Versión 7.4 Agregue una base de datos para el sitio [y/n] y iniciando nitro …… iniciando mysql-8.0-3306.database.nitro ✓… iniciando nitro-proxy ✓ nitro comenzó 👍 Ingrese el nuevo nombre de la base de datos: Newsite … Creación de la base de datos Newsite ✓ Base de datos agregada 💪 ¡Nuevo sitio agregado! 🎉 Aplicar cambios ahora [y/n]? Y comprobación de red … ✓ Comprobación de red de red … ✓ Bases de datos de comprobación de comprobación de proxy … … Comprobación de MySQL-8.0-3306.database.itro ✓ Servicios de verificación … … Comprobación del servicio DynamodB ✓ .. . Comprobación del servicio Mororhog ✓ … Verificación del servicio Redis ✓ Sitios de verificación ……… Verificación del nuevo sitio. Contraseña) Tan pronto como se haga esto, puede navegar por la URL local (en este caso, nuevo-site.nitro) y puede ver una página de error NGINX, que se espera porque el servidor NGINX no tiene nada que mostrar para ese sitio.
También puede usar Nitro Create, pidiéndole que pase un parámetro para el nombre del proyecto. Esto creará un nuevo director de proyectos CMS CMS e instalará el código CMS Craft, listo para el desarrollo de CMS CMA. No es ideal para el desarrollo de WordPress, pero es útil saber. Nitro incluye automáticamente cosas como DynamoDB y Redis Services. Sin embargo, si no necesita estas cosas, es un poco exagerado. Obviamente, está adaptado para crear el desarrollo de CMS y supongo que los desarrolladores de CMS de CMS usan estos servicios. Me gusta el hecho de que viene con Mailhog, que es una excelente manera de probar el correo electrónico en un entorno de desarrollo local. Uso nitro para el desarrollo de WordPress que quería ver si Craft Nitro puede funcionar con WordPress, por lo que mi siguiente paso fue descargar y extraer Una copia de los archivos básicos de WordPress en una prueba de WordPress local que había configurado con Nitro. Ya tengo WP-CLI instalado en mi estación de trabajo, por lo que solo podría ejecutar WP Core Descargar en el directorio del sitio. Si no tuviera WP-Cli, descargaría y extraería el archivo de wordpress.org. A continuación, decidí ejecutar la famosa instalación de 5 minutos. Sé que puedo hacer esto a través de WP-CLI, pero quería ver si puedo hacerlo generalmente a través del programa de instalación de WordPress. Desafortunadamente, las cosas comenzaron a salir mal.
El primer problema que encontré fue que el nombre de usuario y la contraseña implícitos de la base de datos no estaban documentados en ninguna parte que consideraba lógico. Esto probablemente se deba al hecho de que la mayoría de los desarrolladores de CMS artesanales usarán Nitro Create, que también establece las credenciales para el proyecto. Después de algunas excavaciones, encontré los detalles en la parte inferior del documento de ayuda para configurar el proyecto. También aprendí que ejecutar el contexto nitro en la línea de comando en el director del proyecto muestra el nombre de la base de datos, el nombre de usuario, la contraseña y el nombre del host. Con estos detalles, hago clic en la instalación de WordPress. Llegué a la pantalla de la credencial de la base de datos, ingresé los detalles relevantes, presioné y me presentaron un mensaje genérico de “error crítico” de WordPress.
Debido a que el mensaje de error realmente no me ayudó a entender lo que no estaba yendo bien, comencé a cavar. Primero revisé el registro de errores de PHP, pero no se informó nada. Así que intenté viajar el archivo /wp-admin/setup-config.php usando xdebug y phpstorm y aprendí que este archivo deshabilita el informe de errores de PHP. / ** * Desactivar Informes de error * * Establecer esto en ERROR_REPORTING (-1) para la depuración */ ERROR_REPORTING (0); Activé esto, lo que me hizo descubrir que Nitro no funciona implícitamente la extensión de PHP MySQLI, que WordPress necesita. Después de leer los documentos nitro, solucioné esto ejecutando Nitro Extensions en el directorio del proyecto y activando MySQLI.
El error ha cambiado este tiempo, y WordPress me dio la pantalla de error de establecimiento de una conexión de base de datos.Debido a que había activado los informes de errores de PHP anteriormente, miré los errores de PHP y vi el siguiente error reportado.Php_network_getaddresses: getAddrinfo falló:


El nombre no resuelve para mi comprensión limitada de cómo opera Docker, este error significó que el tribunal de Docker que alimenta el sitio no pudo resolver el nombre de host Docker que alimenta la base de datos, por lo que WordPress no pudo conectarse al tribunal de la base de datos Docker. Así que utilicé el comando Nitro SSH para conectarme al Tribunal Nitro Docker y a Ping al nombre de host de la base de datos Nitro. Esto me dio la dirección IP de la corte de la base de datos, que utilicé en la configuración de WordPress en lugar del nombre del host, que funcionó. Entonces, al final, tengo una instalación funcional de WordPress usando Nitro, pero fue un poco difícil instalarlo. No estoy seguro de si esa dirección IP de la base de datos alguna vez cambiará, lo que significa que debería actualizar mi wp-config.php si alguna vez sucedió. Además, no estoy completamente seguro de que todo funcione como espero, y cuando logré instalar WordPress, estaba demasiado frustrado para preocuparme. Para ser honesto, estaba un poco decepcionado. Por supuesto, Craft Nitro está hecho con CMS CMS en mente, pero así como Laravel Homestead o Laravel Valet están hechos con Laravel en mente. La diferencia es que puedes ejecutar WordPress fuera del cuadro con cualquiera. Devkinsta en el otro extremo del panorama de desarrollo local de WordPress basado en Docker es el recientemente lanzado Devkinsta, de Kinsta. Si no ha oído hablar de Kinsta, estos son un host de WordPress administrado que se lanzó al mismo tiempo que Craft CMS.
Hasta donde yo sé, fueron uno de los primeros en construir toda su pila de tecnología en la plataforma de Google Cloud y rápidamente se convirtió en un popular anfitrión de WordPress. Siguiendo la oferta LocalWP del Flywheel, Kinsta ha lanzado a Devkinsta como una forma de diseñar, desarrollar e implementar sitios de WordPress en su automóvil local. El propósito de herramientas como LocalWP y Devkinsta es brindarle la oportunidad de utilizar los beneficios de Docker para el desarrollo local, pero sin todos los dolores de cabeza. Devkinsta está dirigida a aquellos que se desarrollarán en o para WordPress y aquellos que lo usarían solo para construir sitios de WordPress para el cliente, utilizando herramientas sin codificación como Block Editor o Elementor. Instalar y configurar Devkinsta haciendo clic en el enlace de descarga en el sitio web de Devkinsta, lo presentará para los instaladores de Ubuntu, Windows y Mac. Supongo que Devkinsta no anticipa a ningún posible usuario que ejecute distribuciones de Linux que no se basan en Debian. Eso o haber hecho su investigación y saber que no es el caso. De todos modos, fue bueno ver una opción de instalación disponible aproximadamente cuatro meses después de lanzar las versiones iniciales para Mac y Windows. Cuando visita la página de descarga, aparece un formulario “Regístrese para descargar Devkinsta” y solicite que ingrese la dirección de correo electrónico para acceder a la descarga. Los enlaces de descarga real son correctos en el formulario y, en mi caso, simplemente podría ignorar el formulario y hacer clic en el enlace de descarga.
Una vez que ejecuta el programa de instalación, trata de cualquier otra cosa para usted, desde la descarga e instalación de Docker hasta la configuración de los contenedores Docker. Se necesita un poco de tiempo para configurar todo, por lo que una vez que inicia las cosas, puede elegir la bebida y dejar que el instalador haga su trabajo. Una cosa a tener en cuenta es que, dependiendo de su conexión a Internet, puede llevar mucho tiempo descargar e instalar todo antes de comenzar a crear sitios web. Herví la tetera, preparé mi casting y bebí mi café antes de que todo terminara. El uso de Devkinsta para el desarrollo de WordPress que será creado por un host de WordPress administrado significa que Devkinsta se crea para ser utilizado con WordPress. Desde el tablero, puede crear un nuevo sitio local de WordPress utilizando la configuración predeterminada que ofrece Devkinsta, puede descargar cualquier sitio desde su cuenta Kinsta (si tiene una) para usarlo con Devkinsta o puede crear un sitio personalizado, que generalmente Le permite personalizar cosas como la versión PHP o la versión de WordPress.
Al igual que Nitro, Devkinsta tratará cosas como mapear un host local en su sitio, para que pueda navegarlo en un navegador web y asignar su nombre de corte de base de datos para que el sitio web de WordPress pueda hablar con la base de datos. Pero, a diferencia de Nitro, todos estos funcionan perfectamente desde el cuadro para WordPress. Me gustó el tablero del sitio. Está limpio, pero le brinda toda la información sobre el sitio que necesita e incluye enlaces para abrir el sitio local en un navegador, para empujar el sitio a su entorno de preparación Kinsta, para ver los datos del administrador base (usando el administrador) Open WP Admin. También tiene opciones para ver la casilla de correo electrónico del sitio local (supongo que es si el sitio ha enviado correos electrónicos y debe ver el contenido). Devkinsta también tiene algunos hermosos toques en la configuración que apreciamos, como configurar el director de su sitio local, si no desea utilizar los usos predeterminados de Devkinsta o configurar un nombre de usuario y contraseña de administrador predeterminado. Para sitios locales recién creados. Mi mayor insatisfacción con cualquiera de estos instrumentos ambientales locales es que no acepta otras plataformas de alojamiento. Desde el punto de vista del marketing/negocio, entiendo la razón que hizo posible empujar un sitio de Devkinsta local hacia el alojamiento de Kinsta.

Sin embargo, me gustaría ver que una de estas herramientas hace posible configurar los detalles FTP y la base de datos para cualquier otro tipo de alojamiento. Siendo una persona que ha orientado la carrera de desarrollo gratuita de su WordPress en el desarrollo del arado, rara vez formaba parte de las decisiones de alojamiento del cliente y, por lo tanto, significa que nunca podría usar ninguna de estas herramientas. Sin embargo, probablemente no debería quejarme, porque entonces no necesitaría productos como WP Migra DB Pro y ¡es posible que no tenga un trabajo! Pensamientos finales El entorno de desarrollo local de WordPress es interesante. Recientemente publiqué una pregunta sobre esto en Twitter y mencioné al menos 12 (si no más) opciones, incluidas las aplicaciones que han existido para siempre, como MAMP y XAMPP. Y entiendo por qué. Estas aplicaciones se prueban y proban, no se basan en ninguna plataforma de alojamiento específica y funciona. Sin embargo, tienen limitaciones, por lo que hay soluciones basadas en host como Devkinsta. Si no es específicamente un cliente de volante, pero usa LocalWP y piensa en probar Devkinsta, le recomiendo. Los usé ambos y ambos son buenos, por lo que realmente depende de las preferencias personales. Por supuesto, si usted es un cliente de volante o un cliente Kinsta, entonces el uso de la herramienta de desarrollo local de cada host tiene un significado absoluto. No estoy convencido de que alguien cambiaría el alojamiento de acuerdo con la herramienta de desarrollo local que ofrece. En cuanto a Craft Nitro, no puedo decir que lo recomendaría como una solución de desarrollo local de WordPress.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *