I am running Appwrite on a DigitalOcean Droplet with 160GB, with my buckets running on DO Spaces so they're not included at all here. I have ended up hitting the limit of storage on the Droplet and am looking to connect block storage volumes to the Droplet as a way to expand the capacity without having to essentially double the cost of the Droplet but wasn't sure how that would work with getting the Appwrite containers to use the block storage mounted path
That can be a bit tricky,
First, try to spot the over-sized folder, meaning, find what causes that you're out of space.
Second, after you've spotted it you'll need to mount that folder using fstab
It looks like it's my appwrite-cache container that's using ~105GB, I don't support there would be a way to set just that container up to use the mounted storage instead?
Yes, you can
You'll need to make a few changes
But, why is it takes so much space?
We've got about 60-70k users on a very image heavy website, so I'm expecting it'll be a lot of image preview caches
Alright
There are few ways to tackle it
Having a look at docker-compose.yml
I'm assuming that it should just be the case of adding the mounted drive as the local driver options for the appwrite-cache
volume that's defined in docker-compose.yml
?
The fastest way would be:
- Add object storage drive
- Create a symlink of it
You new drive would be inside
/mnt/drivename
Create the symlink like so, for exmaple insidehome/cache
ln -s /mnt/drivename /home/cache
- Change volume to mounted, to a local folder in your server, like so
volumes:
appwrite-mariadb:
appwrite-redis:
appwrite-cache:
driver: local
driver_opts:
type: volume
o: "bind"
device: "/home/cache"
And reload your docker compose, From now one all files would be created inside that folder that it's actually the attached object one.
Notes.
- You might need to delete the old volume manually, find is location by running
docker volume inspect appwrite-cache
- All of the current cache would be irelevant, again you can move it manually.
That's perfect, thank you! I'm going to give this a go later tonight and will let you know how it goes
Recommended threads
- Realtime with multiple connections
I need the Realtime on multiple Collections for diffrent applicational logic. So my question is: Is there a way to have only 1 Websocket connection or do I need...
- Can't login or deploy functions in Appwr...
Hello, since i updatet to the appwrite cli 6.1.0 i can't login or deploy functions with the cli. When i call the command: "appwrite get account --verbose" i ge...
- Create admin user?
I'm not really sure how this is supposed to work, I installed Appwrite through docker-compose and set it up. When I launched the app and went into it, I created...