我正在尝试使用以下链接运行 Cosmos DB 模拟器 Windows 容器映像:
我正处于容器正在运行的位置,并且可以看到数据浏览器。 所以这很好! 我现在尝试导出模拟器的证书,以便可以使用这些说明在本地导入并运行(来自 https://learn.microsoft.com/en-us/azure/cosmos-db/how-to-develop -emulator?tabs=docker-windows%2Ccsharp&pivots=api-nosql#export-the-emulators-tlsssl-certificate):
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
但是,这会导致“未找到”。 我在浏览器中尝试过该 URL,结果出现 404。
谢谢。
是否有另一种方法可以从容器中获取此证书,以便我可以在没有警告的情况下进行连接?我还将通过 .NET 应用程序连接到此,因此我希望不必费力去禁用 TLS 验证。
为了导出 SSL 证书,您可以按照以下方法操作 -
单击“下一步”,然后完成安装过程。成功导入后,打开证书时您将看到以下消息。
以隐身模式浏览
https://localhost:8081/_explorer/index.html
URL 或清除同一浏览器的缓存,您将不再看到不安全警告。
我也遇到了同样的问题。我通过重试解决了这个问题,如下
# These retries are needed since a downloaded file may be a JSON response.
while true;
do
curl -k --retry 20 --retry-delay 5 --retry-all-errors https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
if grep 'END CERTIFICATE' ~/emulatorcert.crt > /dev/null
then
break
fi
echo 'Retrying since the file is broken...'
sleep 5
done