When launching compose.yaml Azure is not creating the volumes. When I run in Docker it is creating the volumes necessary for my expected outcome.
Actual behavior
No Volumes are being created.
Additional Information
Testing an EdFi year-specific database, I have made generic configurations to test in my personal account on Azure. I can get the file to the ACR and launch it, however, as stated the volume stores don’t create. I can link them by creating a separate Postgres DB, but I would like to see the persistent volumes create.
Also, when I push to my subscription from the Docker desktop I am unable to get the volumes as well. Just trying to determine if I am missing something or if Azure blocks this and forces you to use an online storage service in your Azure cloud. Ultimately, I suppose it doesn’t matter but as a stubborn goat, I want to try.
I have no issue reproducing the error in Azure Containers. I have tried both web apps container and container svc. And to be clear, yes I am new to this.
Do you mean you run the container using docker run ...? If you do, have you tried docker compose on your machine or in a simple virtual machine without Azure?
If cou can share your docker compose file or create one for us that has the same result without creating a volume defined in your compose file, we can help easier.
Update:
@rmassey03 I edited your reply to this post and the spam filter hid it. It will be restored soon so we can see your compose file, but please, use code blocks when you insert code because it was unreadable.
Thank you for your reply. The command I am using is:
docker compose -f ./compose/pgsql/compose-year-specific-env.example.yml --env-file ./.env up -d
When I run the file locally in and in an VM. They work properly. I suspect the issue is that Azure prefers to use a service instead of a container volume. Again, I am new to this and Containers, I could be completely wrong. But from my reading in Linux forums, there are others that were successful in their builds.
Since I don’t use Azure, let’s see if I can ask some questions so you can solve it for yourself eventually.
You wrote
Which product of Azure do you use then that doesn’t work? If it is not a virtual machine, then I can easily imagine that you are right when you think:
Althought it would not be a force, since “local” driver in the compose file means you want a local volume right where your containers are running. In the cloud you usually don’t want a local volume, since when your containers are moved to an other machine, you lose your data. If this is the case, Amazon should have a documentation about it. Of course when you create you containers on your VMs, you can can manage the filesystem and decide to use a local volume for example because your containers will syncronize data between multiple volumes.
So this is my guess, but as I mentioned, I don’t use Azure. If I am not right, you need someone more experienced with Azure.
Apologies for the delayed response. Just returned from Holiday. After some digging, it is possible to get them to run if using an init deployment. However, it is going to be much easier to just using an Azure_File storage or direct to the Postgres we are using in a VM. I appreciate your responses and again, apologies for my delay.