…pero no estoy seguro de cómo probar si realmente funcionan. No conozco muy bien estos sistemas. Esto es solo para un pequeño foro de un grupo de amigos.
Inicialmente tenía lo siguiente activo, pero tuve que volver a comentarlo en el app.yml porque no reconstruía con esas líneas activas. No estoy seguro de si todavía es necesario o no en este momento…
He subido manualmente un archivo desde el área de administración de Digital Ocean Spaces, lo he configurado como público y puedo acceder a él a través de un navegador.
Aquí hay un ejemplo de lo poco que sé. Estoy atascado aquí y no sé realmente por qué. De alguna manera me he salido de algo y no estoy seguro de cómo volver.
Por alguna razón, lo que normalmente está en /var/discourse ahora parece estar en /var/www/discourse
Simplemente estoy atascado en este punto. He buscado en el foro y no he encontrado nada que lo solucione. He pasado un día en el mismo bucle. Esto es en la misma línea, pero es AWS S3 real y no DO Spaces (S3)…
Está ahí. Supongo que simplemente no se muestra con ese otro comando. Tenía el CDN comentado porque decía que había problemas con él, así que estaba tratando de aislar eso. Especialmente porque no estoy 100% seguro de que la URL sea la correcta, ya que el ejemplo era un dominio personalizado en lugar del predeterminado de Spaces. Quizás fue una mala idea intentar aislarlo. Estaba probando muchas cosas.
Aquí está la configuración completa…
Eso no lo solucionó. Incluso con el antiguo comentado y ese copiado y pegado…
Todavía obtengo un error en la reconstrucción…
“no se encontró la clave esperada al analizar un mapeo de bloque en la línea 109 columna 3”
No estoy seguro a qué clave se refiere.
La configuración de las claves de acceso y secreta están en la configuración. No estoy seguro de cómo probar para asegurarme de que esa configuración realmente funcione, pero están ahí.
Después de la reconstrucción, se quedó atascado pensando…
Lo dejé así unas horas. Sin cambios.
Comenté el CDN y me dio el error de la “línea 109” de nuevo. Comenté también la parte inferior y reconstruí. Puedo entrar al foro, pero sigo sin poder subir adjuntos.
Al reconstruir, parece que se cuelga aquí por un tiempo.
No estoy seguro de si importa ya que finalmente lo supera sin ninguna acción.
Con el CDN y la parte inferior comentados, puedo hacer que el foro funcione, pero sigo teniendo el problema original…
Después de reconstruir, se quedó atascado pensando. Al principio pensé que podría estar transfiriendo todo o trabajando en segundo plano, así que lo dejé…
Revisé Espacios y no se subió ningún archivo, así que supongo que se quedó atascado en algo.
Comenté la CDN y me volvió a dar el error de la “línea 109”.
Comenté también la parte inferior y reconstruí. Puedo entrar al foro, pero sigo sin poder subir ningún adjunto.
Al reconstruir, parece que se queda atascado aquí un rato, pero finalmente lo supera sin ninguna acción, así que no estoy seguro de que eso importe en absoluto…
Con la CDN y la parte inferior comentadas, puedo hacer que el foro funcione, pero sigo teniendo el problema original…
No estoy seguro de qué me estoy perdiendo. Me rendí y dejé todos los ajustes de S3 comentados por ahora.
NOTA AL MARGEN: ¿Hay un comando para actualizar el docker? Creo que normalmente lo hago a través del área de administración, pero no me está pidiendo actualizar de la 24.0.2. No estoy seguro de qué tan grande es el problema. Creo que la versión actual es la 24.0.7.
No estoy seguro de si la configuración del área de administración anula la configuración de app.yml o viceversa, pero aquí están esas configuraciones por si acaso…
Si no se cargó en 30 segundos, probablemente no lo hará. Pero no necesitas esperar tanto. Puedes mirar la pestaña de red en las herramientas de desarrollo del navegador y ver qué no se está cargando.
ALGO está funcionando ahora. Pensé que lo había comentado todo (desactivado) y subí una foto ayer para asegurarme de que volviera a funcionar. Revisé la ruta a esa foto esta mañana y está usando el… ¿CDN, supongo?
Parece que las imágenes están funcionando correctamente ahora. Lo único que se me ocurre es que desmarqué “S3 use IAM profile” (Uso de S3 con perfil IAM) en la configuración. Supongo que esa era la clave que estaba buscando y que dejó de buscar. No estoy seguro de por qué lo tenía marcado en primer lugar. Probablemente porque realmente no tengo ni idea de lo que estoy haciendo.
Todavía tengo problemas para ejecutar las copias de seguridad, pero tal vez eso sea un problema del espacio del Droplet. Parece que no tiene suficiente espacio para prepararla localmente antes de subirla. Investigaré eso por separado ahora que parece que al menos está conectado al Space.
Gracias Jay, me comunico contigo más tarde esta semana cuando pueda trastear de nuevo con este foro de amigos. Ahora voy a pagar algunas facturas.
Tuve unos minutos mientras esperaba que mi pareja se preparara, así que pensé en revisar el espacio. Después de pensarlo más, supuse que ese debía ser el problema. Comprobé con…
df -h
Oh sí, muy lleno. Ejecuté…
docker system prune -a
Ejecuté…
./launcher cleanup
Gracias de nuevo Jay.
Efectivamente, liberé más de 20 GB.
¡Ejecuté la copia de seguridad manualmente y funcionó!
Ahora estoy tratando de migrar todos los archivos del almacenamiento local a S3…
Revisé algunas cosas esta mañana mientras esperaba que comenzara una reunión.
Rake no pareció funcionar, o tal vez todavía está en progreso. Aún no puedo saberlo. El uso del espacio disminuyó, pero cuando revisé manualmente algunas fotos antiguas, todavía parecían tener la URL local antigua. Tendré que investigar más a fondo.
No estoy seguro de cuál es la diferencia entre rake y reback. Supongo que uno está migrando los archivos y el otro está actualizando las rutas en las publicaciones. Hay más que aprender.
Todavía está utilizando mucho espacio en /import (1.4GB) y /uploads (9.2GB). Mucho para nuestro paquete pequeño. Estoy tratando de descargar eso a almacenamiento más barato y esos son, con diferencia, los fragmentos más grandes.
Como información para cualquiera que esté configurando lo mismo, esto es lo que está utilizando para las URL de los endpoints…
Para volver a hornear (rebake) las publicaciones después de cambiar el enlace CDN en Discourse, necesitas ejecutar la tarea rake de rebake para que todo el HTML de la publicación cocida se actualice con las nuevas URL de los activos.
Aquí está el proceso:
1. Entrar al contenedor
Shell
cd /var/discourse
./launcher enter app
Mostrar más líneas
2. Ejecutar la tarea de rebake
Shell
rake posts:rebake
Mostrar más líneas
Esto hará lo siguiente:
Volver a renderizar todas las publicaciones usando la configuración actual (incluida tu nueva s3_cdn_url).
Actualizar el HTML cocido para que las imágenes y las subidas apunten al CDN.
Opcional: Acelerar
Si tienes un sitio grande, puedes ejecutarlo en lotes:
Shell
rake posts:rebake[1000]
Mostrar más líneas
Esto vuelve a hornear 1000 publicaciones a la vez.
3. Verificar
Comprueba algunas publicaciones con imágenes o subidas para confirmar que ahora usan la URL del CDN.
_________\_
Parece que se está ejecutando. Volveré a revisar más tarde.
Esto ejecuta el rebake, pero no solo 1,000 a la vez. Simplemente ejecuta todas e ignora la parte [1000]. Quizás mi sintaxis no es del todo correcta ahí.
Otro recordatorio para mí tanto como para cualquiera. Estaba buscando esta URL en el menú porque la tenía al revés (.cdn.sfo3. en lugar de al revés, lo que obviamente rompió el SSL). No pude encontrar la configuración al buscar. Luego encontré una ventana que ya tenía abierta. La actualicé e intenté guardar y obtuve esto…
Olvidé que una vez que la configuración se agrega en app.yml, desaparece del menú de configuración de administrador. Ahora lo recuerdo.
El rebake pareció funcionar, solo tenía la URL incorrecta. Eso se está actualizando ahora.
Sin embargo, sigo con menos de 50 archivos en mi almacenamiento de Space, así que el rake de archivos no está funcionando.
Estoy seguro de que los puse pensando que no significaba nada. Los eliminé. Creo que fue principalmente el que estaba antes de “hooks:” al que se refería.
Todavía no veo que mi recuento de elementos aumente en Spaces, por lo que parece que aún no está subiendo los archivos /uploads a ‘S3’. Esto me había estado desconcertando, así que me alegro de que se haya resuelto. Pero estoy de vuelta en la pantalla de carga.
Además, con eso habilitado, solo veo la pantalla de carga.
Si DISCOURSE_S3 y after_assets_precompile no están comentados, el foro simplemente se queda cargando en el navegador
Sin ideas. Dando vueltas.
Tendré que dejar esto en pausa por un tiempo. Al menos evitará que el espacio sea un problema a partir de ahora, ya que las nuevas cargas y copias de seguridad se están yendo a Spaces.