如果 运行 多个项目同时停止,Azurite 存储模拟器将停止

Azurite storage emulator stopping if running multiple projects at once

晚上好,我一直在做一个有 Web 应用的项目,api,一些库和一些 Azure 功能。当我 运行 只有 Azure 函数本身时它工作得很好但今天我注意到当我 select VS2022 中的多个启动项目和 运行 所有项目一次它们都是 运行ning 很好,但我的 azure 函数给我错误“无法建立连接,因为目标机器主动拒绝它。”。在控制台输出中,我可以看到模拟器在我启动 Visual Studio 时启动但是之后select 多个项目我看到消息“正在停止 Azure 存储 Azurite 模拟器...”我试图重新启动 Visual Studio 但每当我 select 它停止。为什么停止,有什么办法可以防止停止吗?谢谢

由于默认配置使用 Blob、Queue 和 Table 服务的端口 127.0.0.1:10000, 10001, 10002

  • 确保没有其他进程侦听 Azure 存储模拟器端口。

如何检查是否有任何端口正在使用:

  • 在文本编辑器中从路径 C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator 打开 AzureStorageEmulator.exe.config
  • 从管理员命令提示符 运行 这些命令:
netstat -p tcp -ano | findstr :10000
netstat -p tcp -ano | findstr :10001
netstat -p tcp -ano | findstr :10002

如果任何进程正在使用上述端口,您需要停止或重新配置 AzureStorageEmulator.exe.config 文件中的端口,以便成为未被任何其他应用程序使用的端口。

  • 同样,运行 以管理员身份运行命令提示符 > 导航至上述路径(存储模拟器路径)> 运行 命令:AzureStorageEmulator.exe init

The storage emulator was successfully initialized and is ready to use - 如果命令 运行 成功,您将看到此消息,

如果 init 命令不成功,请通过 运行 执行以下命令检查错误详细信息以及 Azure 存储模拟器的状态:

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>AzureStorageEmulator.exe status

它应该显示 IsRunning: True

  • 如果上述步骤不起作用,请转到事件查看器(可用在开始按钮搜索上)。
  • 尝试 Delete/Reinstall Azurite 或 Azure 存储模拟器。

请查看这些参考以获取更多信息:

  1. Run automated tests by using Azurite
  2. Azurite Emulator
  3. Azurite