From 4ca12837ddc5c5b5e935ce00f5c21c94cd39ef92 Mon Sep 17 00:00:00 2001 From: "Carlos (Almeira)" Date: Wed, 1 Jul 2026 11:09:03 -0500 Subject: [PATCH] Update Appwrite global and bucket file size limits to 150MB --- appwrite-coolify.yml | 4 ++-- docker-compose-appwrite.yml | 4 ++-- setup_media.js | 2 +- update_bucket_limit.js | 39 +++++++++++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 5 deletions(-) create mode 100644 update_bucket_limit.js diff --git a/appwrite-coolify.yml b/appwrite-coolify.yml index 2b7dc0c..3ec2bf4 100644 --- a/appwrite-coolify.yml +++ b/appwrite-coolify.yml @@ -59,7 +59,7 @@ services: - _APP_SMTP_PASSWORD=${_APP_SMTP_PASSWORD} - _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled} - _APP_USAGE_AGGREGATION_INTERVAL=${_APP_USAGE_AGGREGATION_INTERVAL:-30} - - _APP_STORAGE_LIMIT=${_APP_STORAGE_LIMIT:-30000000} + - _APP_STORAGE_LIMIT=150000000 - _APP_STORAGE_PREVIEW_LIMIT=${_APP_STORAGE_PREVIEW_LIMIT:-20000000} - _APP_STORAGE_ANTIVIRUS=${_APP_STORAGE_ANTIVIRUS:-disabled} - _APP_STORAGE_ANTIVIRUS_HOST=${_APP_STORAGE_ANTIVIRUS_HOST:-appwrite-clamav} @@ -346,7 +346,7 @@ services: - _APP_COMPUTE_BUILD_TIMEOUT=${_APP_COMPUTE_BUILD_TIMEOUT:-900} - _APP_COMPUTE_CPUS=${_APP_COMPUTE_CPUS:-0} - _APP_COMPUTE_MEMORY=${_APP_COMPUTE_MEMORY:-0} - - _APP_COMPUTE_SIZE_LIMIT=${_APP_COMPUTE_SIZE_LIMIT:-30000000} + - _APP_COMPUTE_SIZE_LIMIT=150000000 - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - _APP_OPTIONS_ROUTER_FORCE_HTTPS=${_APP_OPTIONS_ROUTER_FORCE_HTTPS:-disabled} - _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=${_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS:-disabled} diff --git a/docker-compose-appwrite.yml b/docker-compose-appwrite.yml index 3026a56..32a5387 100644 --- a/docker-compose-appwrite.yml +++ b/docker-compose-appwrite.yml @@ -48,7 +48,7 @@ services: - _APP_DB_USER=appwrite - _APP_DB_PASS=V6xN8cQzP2kYjT4wR9bH7vL1mF5dS0gM - _APP_USAGE_STATS=enabled - - _APP_STORAGE_LIMIT=30000000 + - _APP_STORAGE_LIMIT=150000000 - _APP_STORAGE_PREVIEW_LIMIT=20000000 - _APP_STORAGE_ANTIVIRUS=disabled - _APP_STORAGE_ANTIVIRUS_HOST=appwrite-clamav @@ -274,7 +274,7 @@ services: - _APP_COMPUTE_BUILD_TIMEOUT=900 - _APP_COMPUTE_CPUS=0 - _APP_COMPUTE_MEMORY=0 - - _APP_COMPUTE_SIZE_LIMIT=30000000 + - _APP_COMPUTE_SIZE_LIMIT=150000000 - _APP_OPTIONS_FORCE_HTTPS=disabled - _APP_OPTIONS_ROUTER_FORCE_HTTPS=disabled - '_APP_DOMAIN=appwrite.almeira.com.co' diff --git a/setup_media.js b/setup_media.js index 13d6647..d000943 100644 --- a/setup_media.js +++ b/setup_media.js @@ -33,7 +33,7 @@ async function setupMedia() { [sdk.Permission.read(sdk.Role.any())], // Anyone can view files publicly true, // fileSecurity true, // enabled - 30000000, // maximum file size (30MB max limit to satisfy Appwrite validation) + 150000000, // maximum file size (150MB) ['jpg', 'jpeg', 'png', 'gif', 'webp', 'mp4', 'webm', 'mov'] // allowed file extensions ); console.log(' ✓ Storage Bucket creado exitosamente.'); diff --git a/update_bucket_limit.js b/update_bucket_limit.js new file mode 100644 index 0000000..bf50bc9 --- /dev/null +++ b/update_bucket_limit.js @@ -0,0 +1,39 @@ +const sdk = require('node-appwrite'); + +const client = new sdk.Client(); +const storage = new sdk.Storage(client); + +const ENDPOINT = process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT || 'https://appwrite.almeira.com.co/v1'; +const PROJECT_ID = process.env.NEXT_PUBLIC_APPWRITE_PROJECT_ID || '69b84df5003bd8957c5c'; +const API_KEY = process.env.APPWRITE_API_KEY || 'standard_ee81a4ca6784c0fa6a23abab0a983dbba9cd0c2d8e211a00c759d9801f5d8e27b43a605bfa373e13106da87acfc7673608f0ffb0eb04e10cae3dae93d2404bfda8676f96e3fcfd6bd642f6e12d69367916b796c54e98e2e4c4bc0b7a27aa42ba5048582fcbd45b1365b51c5014cb939c1853923c418048ff0e39c2237065da3c'; + +client + .setEndpoint(ENDPOINT) + .setProject(PROJECT_ID) + .setKey(API_KEY); + +const targetBucketId = 'media_bucket'; + +async function updateBucketLimit() { + try { + console.log('Actualizando límite de tamaño del bucket...'); + + // El tamaño máximo debe estar en bytes. 100MB = 100 * 1024 * 1024 o 100000000 (appwrite suele usar base 10 o base 2, pondremos 104857600 = 100MB real, pero pongamos 150000000 para dar margen). + const newLimit = 150000000; // 150 MB + + await storage.updateBucket( + targetBucketId, + 'Biblioteca de Medios', + [sdk.Permission.read(sdk.Role.any())], // Anyone can view files publicly + true, // fileSecurity + true, // enabled + newLimit, // maximum file size + ['jpg', 'jpeg', 'png', 'gif', 'webp', 'mp4', 'webm', 'mov'] // allowed extensions + ); + console.log('✓ Bucket actualizado correctamente a 150MB.'); + } catch(e) { + console.error('❌ Error actualizando el bucket:', e.message); + } +} + +updateBucketLimit();