我从Azure门户创建一个新的Function App(v2)。然后,借助Azure Functions核心工具v2.3在本地计算机上启动一个新应用,并将其发布到门户上的新应用中:
func init
func new
func azure functionapp publish my-app-name
这会将我的应用置于只读模式。但是我需要能够从门户更改应用程序,因为我需要创建代理(Core Tools无法创建代理,如果我错了,请更正我)。如何禁用只读模式?
以下是我的local.settings.json的内容:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "node",
"AzureWebJobsStorage": "{AzureWebJobsStorage}"
}
}
仅供参考,我正在macOS High Sierra上进行开发。
答案 0 :(得分:5)
第1部分-禁用只读模式
您可能会发现您是否正在使用功能应用程序处于“从包运行”模式的最新工具,这意味着它正在直接从上传的ZIP中读取文件,因此无法对其进行编辑。您可以通过删除门户中的WEBSITE_RUN_FROM_ZIP
或WEBSITE_RUN_FROM_PACKAGE
应用程序设置将其关闭。请注意,这将清除您的功能应用程序,直到您下次发布为止。
如果您的工具较旧,或者使用func azure functionapp publish my-app-name --nozip
来使用最新工具进行部署,则可以使用门户网站平台功能中的App Service编辑器来编辑function.json文件和删除"generatedBy"
设置,这将阻止它们变为只读状态。
第2部分-创建代理
您可以通过在应用程序根目录(以及proxies.json
)中填充host.json
文件来向本地项目添加代理。更多信息在https://docs.microsoft.com/en-us/azure/azure-functions/functions-proxies,一些示例在https://docs.microsoft.com/en-us/sandbox/functions-recipes/proxies。您还可以在门户网站中创建代理(当不是只读时!),然后使用高级编辑器获取将其添加到项目中的源代码。
答案 1 :(得分:1)
现在看来可以从门户网站或通过编辑应用程序设置来更改此设置。 根据{{3}}
,FUNCTION_APP_EDIT_MODE
允许值readwrite
和readonly
以下问题中也有the manual。 似乎一般不建议这样做,因为应该通过发布管道进行更改,但是现在可以。
答案 2 :(得分:0)
在 azure 版本中将部署设置从自动检测更改为 Zip 部署。