dotnet-docker
BenchmarkDotNet
dotnet-docker | BenchmarkDotNet | |
---|---|---|
24 | 67 | |
4,228 | 10,036 | |
0.9% | 1.0% | |
9.4 | 9.2 | |
3 days ago | 6 days ago | |
Dockerfile | C# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
dotnet-docker
-
Exploring .NET 8 Preview 3: The 7 Features You Need to Know
This cool method lets you whip up optimized apps that get along swimmingly with Docker. Neat, huh? --platform values. Take a peek at this sample to see the pattern in action!
-
Need Help with C# on raspberry
You can also use the .NET Docker images to run (or build from source and then run) .NET applications.
-
Portability is a nightmare
Sadly, lots of dotnet apps still out there. Luckily, there's a container for that too!
-
SSL Connection Issue on Lidarr startup (Raspberry Pi 4)
A search of "alpine 3.17 ssl" brings up this link that shows the same error.
-
(.NET/Azure) Docker mentor
Actually, it looks like I am a bit out of the loop, and there is an official .NET runtime for Linux, so you can use it like any other Linux docker images. Looks like there are examples here: https://github.com/dotnet/dotnet-docker
-
Is this Dockerfile ready for production? Is the container automatically secure?
It is good that you are thinking about security 😊. there is an issue in dotnet repo here https://github.com/dotnet/dotnet-docker/issues/1772 that have hardened examples.
-
Why the fuck did Microsoft name everything .NET?
You can use .NET without using ASP.NET Core (yes, the names are confusing right now, they dropped the "Core" suffix for the platform but did not drop the suffix for the web framework). Microsoft publishes a Docker image for .NET for when you just want to run some compiled CIL, but they also provide a Docker image where it includes .NET and ASP.NET Core for when you run a compiled ASP.NET Core web app. (https://hub.docker.com/_/microsoft-dotnet/)
-
Multi-Image Docker Images: Using COPY with Images directly from registries
Keeping the whole Maritime theme alive with Docker (and Kubernetes), I jumped into the sea of Docker Hub with millions of containers and found out that Microsoft hosts all the .NET related container images as .NET by Microsoft registry.
-
Docker multi-architecture, .NET 6.0 and OpenCVSharp
ARG OPENCV_SHARP_BUILD_TAG=2 ARG SDK_VERSION=6.0.202-bullseye-slim-amd64 ARG RUNTIME_VERSION=6.0.4-bullseye-slim FROM syamaner/opencvsharp-build:$OPENCV_SHARP_BUILD_TAG AS opencv # Given we are building a .Net application, the build does not have to be in the target architecture. # Reference: https://github.com/dotnet/dotnet-docker/issues/1537#issuecomment-755351628 FROM mcr.microsoft.com/dotnet/sdk:$SDK_VERSION as build ARG TARGETPLATFORM WORKDIR /src COPY . . # Select the correct RID for the target architecture. # run dotnet publish as usual and pass the RID. RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \ RID=linux-x64 ; \ elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then \ RID=linux-arm64 ; \ elif [ "$TARGETPLATFORM" = "linux/arm/v7" ]; then \ RID=linux-arm ; \ fi && \ dotnet publish -c release -o /app -r $RID --self-contained false # Copy the application as well as native dependencies to the final stage and build the final image without any unnecessary files. FROM mcr.microsoft.com/dotnet/runtime:$RUNTIME_VERSION as final WORKDIR /app # Copy opencv sharp native binding and runtime dependencies. COPY --from=opencv /artifacts/ /usr/lib/ RUN ldconfig COPY --from=build /app/ /app/ ENTRYPOINT [ "dotnet", "/app/OpenCVSharpBenchmarkApp.dll" ]
- Dockerizing ASP.NET hello world - few questions from .NET newbie
BenchmarkDotNet
-
Stop Guessing, Start Measuring: Transform Your Code with BenchmarkDotnet!
Let’s look at the first example you see, when you open up BenchmarkDotnet’s website, or Github page.
-
Benchmarking 20 programming languages on N-queens and matrix multiplication
Or use BenchmarkDotNet which, among other things to get an accurate benchmark, does JIT warmup outside of measurement.
( https://github.com/dotnet/BenchmarkDotNet ).
-
How to improve C# performance on matrix multiplication example?
You can also do proper statistically correct benchmarking by using - https://github.com/dotnet/BenchmarkDotNet. This will run warmup the jit, gauge the overheads, and run your function many times to give you proper data.
-
C# Memory Profiler on VSCode
take a look at: https://benchmarkdotnet.org/
-
standard events vs MVVM Reference Messenger
Yes, weak references are slower than direct calls. How much slower? Heck if I know offhand. But it's usually pretty easy to set up something with Benchmark .NET and find out if it hurts your use case.
-
Mechanisms and Performance when querying data to SQLServer from C#
For this purpose we are going to use our beloved BenchmarkDotNet tool.
-
Object Mapping in .NET
To quantify and compare the performance of the object mapping strategies discussed earlier, we can employ BenchmarkDotNet.
-
Exploring Code Performance Testing in C# with BenchmarkDotNet
BenchmarkDotNet is a popular open-source library that, as stated in the repo's README.md, helps us to transform methods into benchmarks, track their performance, and share reproducible measurement experiments. Using BenchmarkDotNet feels similar to writing unit tests. It's very important to note that the library only works with console apps. Finally, we can visualize the results in the terminal where the benchmark ran or in user-friendly formats such as markdown, HTML and CSV. We will explore examples of there formats later in the article.
-
Is it okay to lock on a StringBuilder, on which StringBuilrer I perform some operations on?
However, obviously this prevents parallelism within the lock, so this only makes sense if you do some other expensive operation in the parallel loop and the string builder is only a small part of it. Performance wise, it may be better to concatenate the results together after the parallel operation, instead of locking inside the loop. You'll have to benchmark it to know for sure.
-
Iterator Benchmarks That Shocked With Unexpected Results!
We’re of course going to be using BenchmarkDotNet for our benchmarks, and you can find all of the code for these over at GitHub. To start, we need an entry point hook for our single Benchmark class that will be defining the permutations of scenarios that we’d like to run. This will be relatively basic as follows:
What are some alternatives?
OpenCvSharp - OpenCV wrapper for .NET
App.Metrics - App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.
docker-multi-arch-opencvsharp - A demonstration of Docker multi architecture build for native dependencies for amd64, amrm64 and arm32 architecture
CodeMaid - CodeMaid is an open source Visual Studio extension to cleanup and simplify our C#, C++, F#, VB, PHP, PowerShell, JSON, XAML, XML, ASP, HTML, CSS, LESS, SCSS, JavaScript and TypeScript coding.
opencv_contrib - Repository for OpenCV's extra modules
Metrics-Net - The Metrics.NET library provides a way of instrumenting applications with custom metrics (timers, histograms, counters etc) that can be reported in various ways and can provide insights on what is happening inside a running application.
dotnet-framework-docker - The repo for the official docker images for .NET Framework on Windows Server Core.
StyleCop - Analyzes C# source code to enforce a set of style and consistency rules.
sdk - Core functionality needed to create .NET Core projects, that is shared between Visual Studio and CLI
Bogus - :card_index: A simple fake data generator for C#, F#, and VB.NET. Based on and ported from the famed faker.js.
OpenCV - Open Source Computer Vision Library
.NET Compiler Platform ("Roslyn") Analyzers