GithubHelp home page GithubHelp logo

dotnetcore's People

Contributors

appsvc avatar jennylawrance avatar kichalla avatar michimune avatar naziml avatar nickwalkmsft avatar patricklee2 avatar rramachand21 avatar sanchitmehta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dotnetcore's Issues

Azure App Service image for dotnet v2.2

Is a built-in image for .Net Core v 2.2 planned? We really mis this now we need to roll our own container or move to Windows App Service.

Additionally, any info / roadmap on deployment for 3.0 image would be nice so we know what to expect there.

Cannot access certificate store

I already posted this on the azure feedback forums: https://feedback.azure.com/forums/169385-web-apps/suggestions/18668707--linux-allow-to-access-certicate-store-within-lin

Feel free to close this issue if it is better handled via the feedback forum.

Using certificates uploaded via the azure portal in a Linux based .NET core app is currently not possible.
Normally you would do something like this to access those certificates (https://azure.microsoft.com/en-us/blog/using-certificates-in-azure-websites-applications/):

using(var certStore = new X509Store(StoreName.My, StoreLocation.CurrentUser)) {
      certStore.Open(OpenFlags.ReadOnly);
      X509Certificate2Collection certCollection = certStore.Certificates.Find(
                                 X509FindType.FindByThumbprint,
                                 // Replace below with your cert's thumbprint
                                 “E661583E8FABEF4C0BEF694CBC41C28FB81CD870”,
                                 false);
      // Get the first cert with the thumbprint
      if (certCollection.Count > 0)
      {
        X509Certificate2 cert = certCollection[0];
        // Use certificate
        Console.WriteLine(cert.FriendlyName);
      }
}

In .NET core 1.1 apps this is not working as expected the X509Store certificates collection is always empty. Maybe I'm just missing a configuration setting but already tried everything described in the blogpost above.

Application logging not working

From aspnet/Logging#564:

I'm running a dotnetcore 1.1 based api in a docker container on azure. When I activate "Application Logging (Blob)" under "Diagnostics logs" in the azure portal my application crashes with the following exception:

Unhandled Exception: System.ArgumentNullException: Value cannot be null.
Parameter name: instanceId
at Microsoft.Extensions.Logging.AzureAppServices.Internal.AzureBlobLoggerProvider..ctor(String outputTemplate, String appName, String instanceId, String fileName, Int32 batchSize, Int32 backgroundQueueSize, TimeSpan period)
at Microsoft.Extensions.Logging.AzureAppServices.Internal.AzureAppServicesDiagnosticsLoggerProvider..ctor(WebAppContext context, AzureAppServicesDiagnosticsSettings settings)
at Microsoft.Extensions.Logging.AzureAppServicesLoggerFactoryExtensions.AddAzureWebAppDiagnostics(ILoggerFactory factory, AzureAppServicesDiagnosticsSettings settings)

I'm using the Microsoft.Extensions.Logging.AzureAppServices 1.0.0 package from nuget.
Are azure App Services on Linux already supported by Microsoft.Extensions.Logging.AzureAppServices?

Azure App Service Linux 2.1.5

Just wondering when App Service for Linux will be updated to support Microsoft.AspNetCore.App 2.1.5. It was deployed to Windows-based App Service Oct 5.

Best regards

Add more advanced .csproj detection

In the init_container.sh (https://github.com/Azure-App-Service/dotnetcore/blob/master/1.1.2/init_container.sh#L13) the detection is done by looking into the root directory for the .csproj file, however, if the project was created in Visual Studio, it will usually be nested in a folder, it would be great if lookup for such case was added by default. I am aware of the possibility to replace init_container.sh with your own, however it would make it easier for newly coming users.

dotnetcore 3.1

Hi where do I find the latest dockerfile to support dotnetcore 3.1?

Thanks

Image appsvc/dotnetcore:6.0_20220405.4, dotnet-monitor binding to 8080

Hi Team,

Not sure if this issue belongs here, but I have two AppServices running in Azure with the same code. Both environments were running great using appsvc/dotnetcore:6.0_20211123.1, but then one mysteriously switched to using appsvc/dotnetcore:6.0_20220405.4. This newer image is failing to run because dotnet-monitor is binding to 8080 and preventing the application from binding to the port. I can't figure out how to tell the AppService to switch back to the previous image. I assume there is no way to control that in the Azure Portal. Absolutely no idea why the two AppServices are running different images and why our production environment was randomly upgraded to this later image.

image

There is a workaround. If I set WEBSITE_PORTS to 8081 and ASPNETCORE_URLS=http://*:8081, then it starts working.

image

System.IO.IOException: Failed to bind to address http://[::]:8080: address already in use.
---> Microsoft.AspNetCore.Connections.AddressInUseException: Address already in use
---> System.Net.Sockets.SocketException (98): Address already in use
at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, String callerName)
at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.Sockets.Socket.Bind(EndPoint localEP)
at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.CreateDefaultBoundListenSocket(EndPoint endpoint)
at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind()
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind()
at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure.TransportManager.BindAsync(EndPoint endPoint, ConnectionDelegate connectionDelegate, EndpointConfig endpointConfig, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.<>c__DisplayClass30_0`1.<<StartAsync>g__OnBind|0>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.AnyIPListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable`1 listenOptions, AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Grimco.X360Plus.Web.Program.Main(String[] args) in /home/vsts/work/1/s/Grimco.X360Plus.Web/Program.cs:line 57 at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.AnyIPListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable`1 listenOptions, AddressBindContext context, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)
at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)

App Service Webjobs still running on stagging slot even with the slot stopped

Hi there,

we are using App Service with staging slots and webjobs on the App Service to run based on schedule trigger. We noticed that besides the fact that our staging slot is stopped, the webjob on the staging slot still runs. So, I wonder since the app on staging is stopped, should the webjobs stop as well? Definitely, we do not want the webjobs running on staging.

I noticed that this is not happening on Prod, because our staging slot has the Always On setting disabled. But on DEV, the staging slot has the Always On setting on.

Can you please clarify this issue?

Thank you

Container init should fail with an more explicit message if .csproj cannot be located

The following message is really hard to spot unless you know where to look (in docker logs, which you have to explicitly enable) and what to look for:

echo Could not find .csproj or .dll. Using default.

I spent a fair amount of time chasing down why my app wasn't starting properly on Linux despite "successful" deployment. It turned out to be because the .csproj wasn't at the root of my git directory.

Changes proposed:

  • Make the message more explicit. Something like "Could not find your .csproj or .dll in /home/site/repository/"
  • When a .csproj isn't found, abort/fail with the more explicit version of the message. I'm not sure that it's desirable to silently fallback to /home/hostingstart/hostingstart.dll. If it's a must-have to fall back to this default dll, then fine to let this item go: displaying a more explicit message is already a win
  • Icing on the cake: display a warning if multiple .csproj/.dll are found in /home/site/repository. Something like "[WARNING] Found multiple .csproj or .dll files in /home/site/repository. Using the first one on the list (head -1)"

.net 8 image support for NTLM?

Hello I'm working from the default .net 8 image and I'm attempting to access my on prem SSRS server via NTLM authentication. While the code works locally I can't get it to work from our app service on linux.

Is NTLM supported by default or do we need another image? Thanks

App Service: Not able to read connection string setting from App settings

What I am trying to achieve
Hello, I have dotnetcore web Api which is running in Azure App Service server farm. I am trying to read the connection string from app service configuration app settings.

What I have tried so far

  • Runtime version: netcoreapp3.1 version-2.31.0.1

  • Hosting environment: Azure App Service

Below is how I am trying to read the connection string settings
var configValue = (ConfigurationManager.AppSettings["PNLDBConnectionString"] ?? String.Empty).ToString();

I have added the connection string in app service configuration section as below

image

As well have added a app settings key as below

image

But in either way, if I am removing the connection string key from app.config and deploying; then while trying to run any API endpoint throws below error which essentially means the it's not able to read the said connection string property

image

Any idea, what I could be missing here? Please suggest.

Require image for ARM64 architecture

Hi Team,

I am trying to use appsvc/dotnetcore image over ARM64v8 but it seems it does not have an arm64 supported tag in the docker hub

I have tried building it locally but it is failing with “exec format error”. The base image of the package mcr.microsoft.com/oryx/dotnetcore:2.2-20190611.2 is not available for ARM64 platform. I have checked for its source to build the image but unable to find it.

Do you have any plans for releasing an ARM64 image?

May I know how the amd64 image is getting published on Docker hub?

I am happy to help in providing the ARM64 support in appsvc/dotnetcore docker image, but first we require the ARM64 tag of the base image mcr.microsoft.com/oryx/dotnetcore:2.2-20190611.2 or link of the source to build it.

Please provide suggestions on the same.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.