You didn't clarify what specific Azure service you're using. It sounds like you're using Azure App Services. In that case your app is running in a VM/container that is managed by Azure. As such the D: drive is going to get reset whenever the service starts up. The C: is for you to store data while the service is running. Neither can be used to persist data across service restarts.
Static content, like images and whatnot, should be part of your app's deployment. That structure is restored when your service is started. If you need to dynamically save files and have them persist across service runs then you're going to need to use storage. Depends on what you are running and what you need to persist to determine that. At the high end is setting up a storage account. You can then store whatever you need in a blob and your app can read/write as needed. This is the closest to a regular file system as you'll get with AAS. You can mount the storage as a local drive so your app is none the wiser. Refer to this article on how to do that.
If you're running an actual VM then you can add additional drives as data drives to your VM like you could anything else.