I see you're using Storage::disk('public') which is different from the public folder in the root of your Laravel application, that's probably why you're getting null since it's not actually there. Storage::disk('public') stores its files in your-laravel-app/storage/app/public.
As a note, it's probably not the best idea to store any generated or uploaded files in the root public folder, since if you commit the project to a version control system like Git, they will persist there. The storage system is intended for those kinds of files.