Azure Storage Emulator error and does not start

人盡茶涼 提交于 2019-11-29 20:16:02
David Rodriguez

Check if you are running BitTorrent/uTorrent or similar software using port 10000.

Check Steve Marx' blog post about the issue. http://blog.smarx.com/posts/windows-azure-storage-emulator-the-process-cannot-access-the-file-because-it-is-being-used-by-another-process

In case that post disappears, the command to check if any other software is using that port is:

C:\Users\smarx>netstat -p tcp -ano | findstr :10000
  TCP    127.0.0.1:10000        0.0.0.0:0              LISTENING       3672

I have same issue after Azure tools update (2.3 version). After hours of research I found strange solution - set 'Start Windows Azure storage emulator' to 'False' (in properties of Azure project).

Summarizing and adding additional points to other answers to this question.

Open C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe file in a notepad or a notepad++ editor. Look at the services section.

<services>
  <service name="Blob" url="http://127.0.0.1:10000/"/>
  <service name="Queue" url="http://127.0.0.1:10001/"/>
  <service name="Table" url="http://127.0.0.1:10002/"/>
</services>

Try to open URL for "Blob" in a web browser. In my case it is

http://127.0.0.1:10000/

If you are unable to open the URL or if there is a error, this is the reason why you are not unable to start Azure Storage Emulator.

Try below steps to resolve the issue.

1) Check if the port 10000 is busy or used by any other process.

To know this you can type the below command in the command prompt

netstat -na | find "10000"

Kill the process.

Now start the Azure Storage Emulator in -inprocess mode

In the Azure Storage Emulator's command prompt type

AzureStorageEmulator.exe start -inprocess

Ctrl+c and then

AzureStorageEmulator.exe start

If this did not resolve the issue try second step.

2) Run this

netsh http add iplisten 127.0.0.1

and then in the Azure Storage Emulator's command prompt type

AzureStorageEmulator.exe start -inprocess

Ctrl+c and then

AzureStorageEmulator.exe start

Make sure the user that initialized the emulator is the same as the user that is starting the emulator. Note that if you elevate as a different user to run initialization, then the initialization only applies to that user.

If that doesn't help, you can try to launch the emulator with the -inprocess flag to get a more detailed error message:

WAStorageEmulator start -inprocess

Run Microsoft Azure Command Prompt as administrator and try to first initialize using AzureStorageEmulator.exe init and then start using AzureStorageEmulator.exe start commands. It worked for my case.

It is also worth to try to run the command prompt with: "Run As Administrator" and then run the command: C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>AzureStorageEmulator.exe start

That did the trick for me!

I had same issue since I had to rejoin my machine to the domain and the user profile got recreated. I noticed that it was starting with option -inprocess from elevated cmd. Then I realized that it has to do with urlac and I solved deleting old ones with following commands:

(from elevated cmd)
netsh http delete urlacl url=http://127.0.0.1:10000/
netsh http delete urlacl url=http://127.0.0.1:10001/
netsh http delete urlacl url=http://127.0.0.1:10002/

After that simply start as usual, the tool will recreate what necessary. Now I can use it without elevation.

Another option is to change the ip binding that the emulator uses in the config file located in the storage emulator directory.

Find wastorageemulator.exe.config and change

<services>
      <service name="Blob" url="http://127.0.0.1:10000/"/>
      <service name="Queue" url="http://127.0.0.1:10001/"/>
      <service name="Table" url="http://127.0.0.1:10002/"/>
   </services>

This would be usefull if another application is already using that port and you cannot uninstall.

Choco

There is some info here that might help:

AzureStorageEmulator.exe init –server MyMachine –sqlinstance **.** –forcecreate –inprocess

See this link.

For me there was nothing running on the needed ports, the issue was that Visual Studio was not started in Administrator mode so the process couldn't be started.

When I went to the Azure Storage Emulator CLI from "Start" that launches a command shell that is also not in Administrator mode which obviously produces the same result.

Opening a command shell in Admin mode did the job.

I have had this happen recently, and it was because I'd recently installed the HDInsight emulator. It appears this was auto-starting the storage emulator causing an error when VS attempted to start it resulting in an error.

Setting the "Start Microsoft Azure storage emulator" value to False worked in this case also.

I encountered the same problem. I found out that, the port 10000 is being used by another process. In my case, utorrent was using it. It could be Bittorrent if that's what you are using. After uninstalling it, it started smoothly with altering my data.

If your torrent downloader means so much to you, you can consider solving your issue from that angle. I hope this works.

For users of the newly released documentdb emulator...Microsoft thought it is a good idea that the documentdb emulator uses the same port as the Storage emulator ;) The only way you can access your storage is by shutting down documentdb emulator and restart Visual Studio and voila you can use it again :facepalm:

I just hit this, and it turns out that Microsoft Teams was using port 10000. Forcing teams to quit resolved the issue. 🤷

I got similar issue with visual studio while trying to run Azure Functions. AzureStorageEmulator.exe init worked for me

if you are trying to start "Azure storage emulator" through Visual Studio=>Server explorer, make sure that you are starting visual studio as an administrator. I was able to get this issue fixed by running the "Azure storage emulator" on the command prompt, by running the command prompt as an administrator.

Windows Backup Agent was running on my VM box on port 10000 - moving to 10003 (via the .exe.config file worked)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!