Visual Studio uses simple HTTP GET requests to download PDB symbols during debugging, which makes Azure Blobs a great maintenance-free candidate to serve those files. The main trick is to structure the blob paths the way Visual Studio expects.
One way to do that (among others) is to use SymStore from the Windows SDK to create the folder structure locally and then Azure PowerShell to upload the files. As an extra bonus SymStore enables symbol-file compression.
Once a symbol server has been set up, the next step is to extend it to provide source files along symbols. This is left as an exercise to the reader (because I have not done it yet…) but the GitHub Source Symbol Indexer script provides a good starting point.
Edit: the source-server doc pre-dates Git and it shows, but getting the debugger to retrieve source files from GitHub is actually just a matter of injecting a short text file into the PDB using pdbstr.exe from the Windows SDK.
Two more links with more detailed background on symbol servers: