在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

时间:2021-08-28 08:09:34

  我要做什么?

改 ASE 的监听地点。对付有强迫症的我来说,ASE 默认监听的是 127.0.0.1:10000-10002,这让我无法接受,所以我要将它改成域名 + 80 端口的方法;

放到容器中,ASE 只允许单实例运行,,难道为了这玩意儿,我要在三个环境下开三个虚拟机?

连接 SQL Server,而不是 SQL Server Express LocalDB。DEV/QA 各有其 SQL Server Instance,固然要桥归桥,路归路。

  要转变 ASE 的监听地点,首先要确认它有没有使用 HTTP Listener(即 HTTP.sys),否则无法撑持端口共享。这个简单,运行起 ASE,netstat -ano 看到端口 10000-10002 的 PID 为 4,根基就可以断定了,但我们还是要进一步确认一下。

  打开 C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe.config,将 StorageEmulatorConfig 中的监听地点和帐号改成这个样子:

<StorageEmulatorConfig> <services> <service name="Blob" url="http://dev.blob.contoso.com/"/> <service name="Queue" url="http://dev.queue.contoso.com/"/> <service name="Table" url="http://dev.tablecontoso.com/"/> </services> <accounts> <account name="dev" authKey="Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==" /> </accounts> </StorageEmulatorConfig>

  以打点员方法运行 ASE,功效如下:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

  看到这里,列位看官可能要问,为什么监听的地点前面要加个“dev.”而不是直接用“blob.contoso.com”这样的地点呢?咳,还不是为了 Azure Storage Explorer。我们看看 Azure Storage Explorer 的连接页面:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

  为了能让 Azure Storage Explore 能连接上。在 Azure Storage Explore 的连接页面上,第一种方法就不用想了,因为你是模拟器;第二种连接方法是使用连接字符串,Azure Storage Emulator 的连接字符串格局必需带有 /AccountName 的后缀(见 https://docs.microsoft.com/en-us/azure/storage/common/storage-use-emulator),测验考试一下:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

  虽然这是我最想要的连接方法,但显然 Azure Storage Explorer 并不接受这样的连接串。那么只剩下第三种:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

  功效:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

  Azure Storage Explorer 把我们的域名改成了 accountname.blob.contoso.com 这样的格局,哎,这是 Azure 的 Storage Account 的 套路,虽然前面挂个“dev.”,后边挂个“/dev”,但也勉强接受了。建个 container 尝尝:

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监

Okay!下一章,我们要测验考试使用自界说的 SQL Server 实例。

在 Windows Server Container 中运行 Azure Storage Emulator(一):能否监听自界说地点?