kalleantero / kalleantero.github.io

0 stars 0 forks source link

https://www.kallemarjokorpi.fi/blog/deploy-net-6-web-app-to-linux-based-app-service #9

Open kalleantero opened 1 year ago

kalleantero commented 1 year ago

Blog by Kalle Marjokorpi

This blog is concentrated to Microsoft and cloud technology, coding and architecture. Solutions, tips and knowledge from a developer to developer.

https://www.kallemarjokorpi.fi/blog/deploy-net-6-web-app-to-linux-based-app-service

kalleantero commented 1 year ago

Migrated from Cusdis. Written by Techmantel at 2021-12-01 17:03.

I faced the same problem today, but the above resolution didn't work (as of 2021-12-01). Tried deploying a bicep template with an app plan of kind: linux and on that a site of kind: app,linux. Having linuxFxVersion set to DOTNETCORE|6.0 gave me the dreaded "The parameter LinuxFxVersion has an invalid value." error message. I tried different combinations and values to no avail. At last I tried using netFrameworkVersion instead set to 'v6.0' and that apparently worked 😳 So this bicep worked for me (extra details omitted for readability); resource appServicePlan 'Microsoft.Web/serverfarms@2021-02-01' = { name: 'plan' location: resourceGroup().location sku: { name: 'F1' } kind: 'linux' } resource appService 'Microsoft.Web/sites@2021-02-01' = { name: 'app' location: resourceGroup().location kind: 'app,linux' properties: { serverFarmId: appServicePlan.id siteConfig: { netFrameworkVersion: 'v6.0' } }

kalleantero commented 1 year ago

Migrated from Cusdis. Written by Techmantel at 2021-12-01 17:03.

I faced the same problem today, but the above resolution didn't work (as of 2021-12-01). Tried deploying a bicep template with an app plan of kind: linux and on that a site of kind: app,linux. Having linuxFxVersion set to DOTNETCORE|6.0 gave me the dreaded "The parameter LinuxFxVersion has an invalid value." error message. I tried different combinations and values to no avail. At last I tried using netFrameworkVersion instead set to 'v6.0' and that apparently worked 😳 So this bicep worked for me (extra details omitted for readability); resource appServicePlan 'Microsoft.Web/serverfarms@2021-02-01' = { name: 'plan' location: resourceGroup().location sku: { name: 'F1' } kind: 'linux' } resource appService 'Microsoft.Web/sites@2021-02-01' = { name: 'app' location: resourceGroup().location kind: 'app,linux' properties: { serverFarmId: appServicePlan.id siteConfig: { netFrameworkVersion: 'v6.0' } }

Migrated from Cusdis. Written by Techmantel at 2021-12-07 15:19.

Oh man....how wrong I was. I though it worked, but noticed that in the app plan's overview it read "Operating System: Windows" even though under the heading there was this penguin server and it said "Linux plan". I then happened to open the scm and realized it was actually running on Windows! Then I tried to reverse-engineer what the UI does to create that linux plan and finally found out it was that reserved: true that differed from my bicep template... After that I realized this is exactly what you had been struggling with too and you even wrote it in bold!! Somehow I managed to completely skip that part 🤦‍♂️ So when I got the correct plan running it finally accepted that linuxFxVersion parameter.