Cómo administrar múltiples sitios de Joomla y sus actualizaciones

14

Tengo varios sitios de Joomla 3.x, que quiero administrar de forma centralizada, sin embargo, todos son para diferentes clientes, por lo que no puedo compartir ninguna información entre ellos.

Lo que quiero lograr es automatizar las actualizaciones entre ellas, ejecutarlas en diferentes versiones (principalmente para reducir los riesgos de actualización) y poder instalar extensiones en múltiples sitios.

Lo que he hecho hasta ahora es configurar un repositorio de subversión con el código compartido y lo vinculo a cada sitio con svn externals. Sin embargo, no he logrado la automatización entre las bases de datos, en términos de estructura de la base de datos y actualización de los detalles de las extensiones.

Mi instalación se ejecuta en mi propio servidor dedicado, que está bloqueado, por lo que tengo que cambiar los derechos de acceso de las carpetas cada vez que actualizo Joomla o una extensión.

A veces he actualizado Joomla ejecutando los scripts SQL que vienen con las actualizaciones yo mismo, en otras ocasiones he tomado la ruta de derechos de acceso de cambio / actualización / derechos de acceso de cambio. Ambos enfoques siguen siendo bastante tediosos.

Tenía un aspecto superficial en estas extensiones: http://extensions.joomla.org/extensions/core-enhancements/multiple-sites pero ninguno de ellos parece que puedan hacer lo que quiero.

¿Alguien ha hecho algo en esta área y podría darme algunos consejos para construir un sistema yo mismo? - ¿hay bibliotecas de código (fuera de Joomla) que puedan rastrear los cambios en la extensión y otras tablas? Es probable que mi lista de extensiones permanezca restringida, tiendo a codificar cualquier otra cosa que sea necesaria en las plantillas o complementos. - alguna otra idea?

jdog
fuente
jdog: gracias por hacer esta pregunta, estaba a punto de preguntar lo mismo. He analizado la solución Watchful.li que estoy evaluando, sin embargo, como REactionFaye menciona a continuación, estoy buscando construir una solución interna. Mientras tanto, estoy usando hojas de cálculo para hacer un seguimiento de todos los sitios y sus extensiones correlacionadas (especialmente para las versiones), y esto es ciertamente algo que se puede automatizar. Idealmente, se necesita una solución que alerta sobre las actualizaciones disponibles, puede llevarlos a sitios múltiples con un punto de restauración, tiene la capacidad de deshacer actualizaciones específicas y registros y registros de actualizaciones.
NivF007
@ NivF007 gracias por el mensaje: cuáles serían sus sugerencias para codificar componentes para lograr lo que queremos. Tengo acceso a una biblioteca que puede detectar cambios en la estructura de la base de datos y aplicarlos a otras bases de datos. Todavía no tengo nada para seguir los cambios de contenido.
jdog
Si esta es una 'discusión' - (por cierto, una que me gustaría mucho tener) - ¡comencemos un tema sobre Joomla! Foro).
NivF007

Respuestas:

8

mysites.guru (anteriormente myjoomla.com) hace todo lo que está pidiendo:

✔ administrar sitios web de Joomla en diferentes versiones de forma centralizada para diferentes clientes

✔ actualizar Joomla

✔ extensiones de actualización

además de mucho más:

✔ escanear en busca de malware

✔ restaurar archivos centrales de Joomla comprometidos a los archivos originales

✔ automatizar copias de seguridad

✔ monitoreo y alertas de tiempo de actividad

Nuevas características se implementan regularmente.

También puede considerar watchful.li, que tiene una funcionalidad similar y parece ser más asequible hasta 25 sitios web. Para más de 25 sitios web, la opción de sitios ilimitados mysites.guru puede ser mejor valor.

No estoy afiliado a myjoomla.org pero lo encuentro útil para administrar los aproximadamente 50 sitios web de Joomla que cuido:

Característica de actualización de la extensión myjoomla.com

Neil Robertson
fuente
1
Watchful.li y myJoomla.com están a la altura. Lo he recomendado tanto a clientes como a gerentes de sitio.
FFrewin
1
He intentado todo lo anterior y he encontrado, para mis necesidades (más de 10 sitios hasta ahora), que myJoomla ofrece una mejor relación calidad-precio, aunque actualmente no ofrece inicio de sesión único, es decir, inicio de sesión de clic desde la interfaz myJoomla, pero El soporte es insuperable. Muy recomendable, además me ha ayudado a identificar y limpiar varios sitios pirateados.
Dtorr1981
@ Dtorr1981 myJoomla permite iniciar sesión con un solo clic ahora ;-)
Phil Taylor
5

Sé que esto no responde a todos sus puntos, pero para mí tengo varios sitios que ejecutan 3.x

Utilizo Akeeba, que me notifica las actualizaciones disponibles, y está configurado para crear puntos de restauración del sistema (básicamente copias de seguridad de SQL) cuando Joomla se actualiza. Entonces mi rutina es:

  1. Copia de seguridad de cada sitio
  2. Buscar actualizaciones para extensiones de respaldo
  3. Si hay actualizaciones para lo anterior, ejecute otra copia de seguridad
  4. Instale la actualización de Joomla para el sitio menos popular primero
tim.baker
fuente
igual que el anterior, ¿no tienes que hacer esto para todos los sitios?
jdog
3

Estoy administrando 30 sitios de Joomla, algunos de ellos son 2.5 y 3.2. En el parche hago lo siguiente por instalación:

  1. Ejecute un script que realice una copia en un directorio de trabajo de los archivos.
  2. Copie la base de datos con los datos actuales como postfix
  3. Cambie la versión del directorio de trabajo a la nueva base de datos.
  4. deje que Joomla lo actualice, quizás actualice algunas otras extensiones
  5. sitio web de prueba (porque una actualización rompe fácilmente algunas funciones, esa es la razón por la que la hago manualmente)
  6. Cambie el nombre de la carpeta del sitio actual con la etiqueta de versión
  7. Cambie el nombre del directorio de trabajo al nombre que apache exceptúa

Esto reduce los riesgos al mínimo y el tiempo de inactividad a cero si realiza los dos últimos pasos atómicos (realmente rápido).

Harald Leithner
fuente
2
Ok, no puedo ver cómo esto automatiza algo. ¿No tienes que hacer lo mismo para todos los sitios? Estoy buscando hacer cosas no para cada sitio, pero automatizarlo.
jdog
3

¿Supongo que no has mirado Watchful.li todavía? Gestionamos más de 200 sitios de forma regular con extensiones y actualizaciones de Joomla. Watchful está diseñado para ayudar a administrar este escenario exacto bastante bien. Es un servicio más nuevo y regularmente agregan nuevas funciones.

Fuera de los requisitos enumerados, Watchful.li hace todo lo que desea: 1) Actualizaciones automatizadas a través del panel de control centralizado 2) Extensiones de instalación remota 3) Copias de seguridad automatizadas a través de Akeeba 4) secuencias de comandos / complementos personalizados posibles 5) toneladas de características más

Ahora, un inconveniente potencial que veo es que si está interesado en dar a los clientes acceso a su propia parte cerrada de este panel de control, todavía no veo que eso sea posible, pero sería una buena característica preguntarles sobre implementar.

Estamos en el proceso de poner alrededor de 200 sitios en esta solución. Tenemos alrededor de 50 actualmente y nos estamos moviendo más a medida que podemos. Espero reducir mucho tiempo de nuestro personal al pasar a Watchful y aumentar la productividad como resultado.

Chad Windnagle
fuente
Hemos usado Watchful en el pasado, Chad está golpeando. Nos hemos alejado de él ahora porque hemos construido nuestro propio sistema orientado a nuestros clientes específicos, pero aún así lo recomendamos.
Faye
Hola Chad, todavía no había visto Watchful.li, pero algunas otras soluciones en este espacio. En este momento, dudo que mi configuración de derechos de acceso a archivos súper segura haya salvado mi tocino tantas veces que no quisiera una solución que funcione desde la interfaz o el marco de Joomla.
jdog
Lo que quiero decir es que cualquier solución que no tenga acceso a mi servidor necesitará inherentemente acceso de escritura a los archivos de Joomla a través de FTP o dentro de Joomla. No quiero abrir esto en este momento.
jdog