Me gustaría contar con soporte para realizar copias de seguridad en un destino de Backblaze.
En este momento, no puedo configurar un punto de conexión como: s3.eu-central-003.backblazeb2.com
Me gustaría contar con soporte para realizar copias de seguridad en un destino de Backblaze.
En este momento, no puedo configurar un punto de conexión como: s3.eu-central-003.backblazeb2.com
Solo por si aún no lo has visto: Configure an S3 compatible object storage provider for uploads
No, no lo había hecho… Ahora sí ![]()
Pero, por otro lado, necesitas un doctorado para poder hacer algo sencillo. Para futuras versiones, la usabilidad del administrador podría ser un problema.
Discourse tiene muchas funciones avanzadas, pero también son demasiado complejas para que las use un usuario promedio (yo :
)
Por cierto, solo quiero que la copia de seguridad se almacene de forma remota, fuera del servidor.
No es necesario subir imágenes u otros archivos, ya que estos se guardan en una CDN. Mi foro no es muy grande ni tiene un uso tan elevado…
Está en un droplet sencillo de 5 dólares…
¡Oh, eso debería ser bastante sencillo entonces! Aunque si no es demasiado grande, quizás sea simplemente menos molestia usar AWS S3. Su precio no es tan malo para el almacenamiento, solo es un poco agitado para el ancho de banda.
Creo que solo necesitarías poner esto en tu app.yml con la información correcta y reconstruir. Se están excluyendo las partes destinadas a las cargas de los usuarios. No necesitarías incluir la otra parte after_assets_precompile del tutorial.
Simplemente conecta por SSH a tu servidor como root y luego ejecuta:
cd /var/discourse
nano containers/app.yml
Usa las flechas del teclado para mover el cursor y pega la información de abajo debajo de la parte del archivo que dice: #DISCOURSE_CDN_URL: https://discourse-cdn.example.com
DISCOURSE_S3_REGION: "us-west-002"
DISCOURSE_S3_INSTALL_CORS_RULE: false
DISCOURSE_S3_ENDPOINT: https://s3.us-west-002.backblazeb2.com
DISCOURSE_S3_ACCESS_KEY_ID: mi_clave_de_acceso
DISCOURSE_S3_SECRET_ACCESS_KEY: mi_clave_secreta
DISCOURSE_S3_BACKUP_BUCKET: falcoland-files/backup
DISCOURSE_BACKUP_LOCATION: s3
Asegúrate de haber colocado la información correcta para la región, el endpoint, la clave de acceso, la clave secreta y el nombre del bucket de respaldo.
Presiona ctrl+o y confirma para guardar, luego presiona ctrl+x para salir. Después ejecuta:
./launcher rebuild app
Estoy bastante seguro de que debería funcionar sin problemas.
Veo que estás en Digital Ocean, así que sería una buena idea hacer una copia de seguridad antes de hacer esto. Así, si algo sale mal, podrás revertir fácilmente.
Gracias por la descripción, @markersocial
Fui a https://secure.backblaze.com/b2_buckets.htm y creé un nuevo bucket.
Luego fui a App Keys para crear una nueva clave de aplicación para el acceso.
Después de la creación, obtienes temporalmente una información como la siguiente; ten en cuenta que solo la verás una vez:
Basándome en eso, utilicé:
DISCOURSE_S3_REGION: “s3.eu-central-003”
DISCOURSE_S3_INSTALL_CORS_RULE: false
DISCOURSE_S3_ENDPOINT: https://s3.eu-central-003.backblazeb2.com
DISCOURSE_S3_ACCESS_KEY_ID: myaccesskey
DISCOURSE_S3_SECRET_ACCESS_KEY: mysecretkey
DISCOURSE_S3_BACKUP_BUCKET: my_buckets_Name
DISCOURSE_BACKUP_LOCATION: s3
Luego hice un rebuild después de crear una instantánea de mi droplet en Digital Ocean:
./launcher rebuild app
Después, fui a /admin/backups y creé una copia de seguridad:
[2020-08-27 09:25:57] Creando archivo: studmed-dk-2020-08-27-092518-v20200820232017.tar.gz
[2020-08-27 09:25:57] Asegurando que el archivo no exista previamente…
[2020-08-27 09:25:57] pg_dump: ejecutando SEQUENCE SET topic_allowed_users_id_seq
[2020-08-27 09:25:57] Creando archivo vacío…
[2020-08-27 09:25:57] Archivando volcado de datos…
[2020-08-27 09:25:59] Archivando subidas…
[2020-08-27 09:26:06] Eliminando directorio temporal ‘/var/www/discourse/tmp/backups/default/2020-08-27-092518’…
[2020-08-27 09:26:06] Comprimiendo archivo con gzip, esto puede tardar un momento…
[2020-08-27 09:26:31] Subiendo archivo…
[2020-08-27 09:26:41] Ejecutando el hook after_create_hook para la copia de seguridad…
[2020-08-27 09:26:41] Eliminando copias de seguridad antiguas…
[2020-08-27 09:26:41] Limpiando archivos…
[2020-08-27 09:26:41] Eliminando archivo del almacenamiento local…
[2020-08-27 09:26:41] Eliminando restos de ‘.tar’…
[2020-08-27 09:26:41] Marcando la copia de seguridad como finalizada…
[2020-08-27 09:26:41] Actualizando estadísticas del disco…
[2020-08-27 09:26:42] Notificando a ‘frold’ sobre el final de la copia de seguridad…
[2020-08-27 09:26:53] ¡Finalizado!
Luego fui a Backblaze para ver si había ocurrido algo allí:
Te debo unas ![]()
¡Buen trabajo! Si alguien más llega aquí, creo que si proporcionas una clave que pueda crear buckets, Discourse incluso creará el bucket por ti.
Cerrado, ya que esto es compatible de forma nativa siguiendo Uso de almacenamiento de objetos para cargas (S3 y clones)