@zefex I may bounce around answering this but here goes...
First, definitely and always use a relative URL. This keeps your code mobile. Consider using the APP_URL from your env to reference this in the application or make a separate env reference like IMAGE_UPLOAD_LOCATION, something to that effect. That way if you ever change where you store files, it won't bite you having to update every single record in the database.
I'm a little confused about your image garbage collection question. Assuming you are just displaying an image in base64 and clearing that, there is no backend to worry about, right? From another angle if you are talking about editing an image stored on your server or s3, etc. You can just reference the image key and send that to a custom endpoint to lookup and destroy the file. So when you pull the images from the db to display, hang on to the image primary key number... if they delete the image, make an axios call to destroy the image by passing the key and have a controller method that looks up the image and removes it from s3, what-have-you. Keep in mind for the user to remove the image from the data array, that would require an action on the user's part like clicking a delete image button or something. So just bind the garbage collection call to that action.


