Storage emulator node does not appear in Storage Explorer after running Azurite container in Docker desktop
Storage Explorer Version
1.41.0-dev
Regression From
1.40.2
Architecture
x64
Storage Explorer Build Number
20251107.1
Platform
All
OS Version
Windows 11 x64
Bug Description
After launching Docker Desktop and running the Azurite Docker image, the expected storage emulator node does not appear in Storage Explorer.
Resource Types
No response
Authentication Method
Sign in
Connection Type
None
Steps to Reproduce
- Launch Docker Desktop, then expand the Terminal from the status bar at the bottom.
- Run docker pull mcr.microsoft.com/azure-storage/azurite to download the Azurite Docker image.
- Click the “Images” button on the left, then click the Play button to run a new container.
- Expand the “Optional settings” and assign three host ports (10000,10001,10002).
- Launch Storage Explorer -> Expand Emulator & Attached -> Storage Accounts.
- Check whether a node appears with a name following the format "Account Name (Container Name)".
Actual Experience
No node appears with a name following the format "Account Name (Container Name)".
Expected Experience
A node appears with a name following the format "Account Name (Container Name)".
Additional Context
- This issue doesn't reproduce on MacOS.
- This issue also reproduces for Custom accounts.
@v-xianya I am able to reproduce...maybe? If I build and run a local build, it seems to reproduce if my editor was open before I installed Docker Desktop. That's because the editor doesn't pick up the updated PATH environment variable that Docker modifies.
What happens if you log out and log back in after installing Docker, then launch Docker and Storage Explorer? Or restart then launch Docker and Storage Explorer?
If the issue still occurs:
- Can you provide the app logs, please?
- Can you tell me where Docker is installed?
- Can you share the PATH environment variable?
- Open the dev window with F12.
- Click the Console tab.
- Type
process.env.path.split(";"). - Copy the output.
Hi @craxal I verified on the latest build 20251110.1. This issue reproduces for both scenarios log out and log back in after installing Docker, then launch Docker and Storage Explorer/restart then launch Docker and Storage Explorer.
Can you provide the app logs, please? Here is the log for the scenario restart then launch Docker and Storage Explorer. 2025-11-11_102752.zip
Can you tell me where Docker is installed? C:\Program Files\Docker\Docker
Can you share the PATH environment variable? [ "C:\Program Files (x86)\Microsoft\Edge\Application", "C:\Windows\system32", "C:\Windows", "C:\Windows\System32\Wbem", "C:\Windows\System32\WindowsPowerShell\v1.0\", "C:\Windows\System32\OpenSSH\", "C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps", "", "C:\Program Files\Microsoft Dev Box Agent\Scripts", "C:\Program Files\Microsoft SQL Server\170\Tools\Binn\", "C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\", "C:\Program Files\dotnet\", "C:\Program Files\Docker\Docker\resources\bin", "C:\Users\v-xianya\AppData\Local\Microsoft\WindowsApps", "C:\Users\v-xianya\.dotnet\tools" ]
@v-xianya That seems to explain why Docker isn't working. The CLI is not in the path variable. Can you confirm whether the Docker CLI is in the PATH variable for the current user after installing Docker but before launch Storage Explorer?
@craxal
- I Installed docker desktop then install storage explorer using current user (do not launch storage explorer). Run 'where docker' in cmd
- Below is the output after typing process.env.path.split(";"). in Console tab. [ "C:\Windows\system32", "C:\Windows", "C:\Windows\System32\Wbem", "C:\Windows\System32\WindowsPowerShell\v1.0\", "C:\Windows\System32\OpenSSH\", "C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps", "", "C:\Program Files\Microsoft Dev Box Agent\Scripts", "C:\Program Files\Microsoft SQL Server\170\Tools\Binn\", "C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\", "C:\Program Files\dotnet\", "C:\Program Files\Docker\Docker\resources\bin", "C:\Users\v-xianya\AppData\Local\Microsoft\WindowsApps", "C:\Users\v-xianya\.dotnet\tools" ]
@v-xianya My guess is the system environment variables are not translating to the Storage Explorer process's environment variables.
Feel free to send me the VM info, and I can find some time to debug.
Hi @craxal I’ve sent the VM information on Teams.
Hi @craxal Here are the collected logs from three VMs with different configurations when installing Docker Desktop.
I think I found the error. There's an escapeShellArgs function we call that wraps command arguments in single quotes. So in this case, the command that's running (and failing) is docker inspect 'container_name' -format json. This is fine in bash, but CMD interprets single quotes as characters in their own right and things we literally mean 'container_name'.
The escapeShellArgs was a suggested safety consideration we put in a little while ago. But since container names must adhere to [a-zA-Z0-9][a-zA-Z0-9_.-]+, I don't think we need it.