Amichai Mantinband
Amichai Mantinband
  • 65
  • 2 370 525
Dockerize Your .NET Application in 5 Minutes!
All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html
In today's video we'll see how simple it is to dockerize a .NET application.
We'll create a Dockerfile with 3 stages for building, publishing, and running our web application in just a few minutes.
Join us on discord: www.patreon.com/amantinband
Get the source code: www.patreon.com/amantinband
Support the channel: www.patreon.com/amantinband
Connect with me on 'em socials:
Twitter: amantinband
LinkedIn: www.linkedin.com/in/amantinband/
GitHub: github.com/amantinband
Check out all my courses on DomeTrain:
dometrain.com/author/amichai-mantinband
Support the channel and get the source code:
www.patreon.com/amantinband
Thanks for watching, don't forget to like & comment & subscribe! ❤️ 💻
Переглядів: 4 404

Відео

Presentation Logic vs Application Logic vs Domain Logic
Переглядів 8 тис.19 годин тому
All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html In today's video we'll talk about Presentation Logic vs Application Logic vs Domain Logic. We'll present and define each, talk about their relationship with one another and see where the code should sit within our project. Join us on discord: www.patreon.com/amantinband Get the source code: www.patreon.com/aman...
Controllers From Scratch Using .NET 8
Переглядів 10 тис.14 днів тому
Get the source code (and support the channel 🙂): www.patreon.com/amantinband Join us on discord (and support the channel 🙂): www.patreon.com/amantinband All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html In today's video, we'll implement 2 endpoints from scratch. We'll talk about the responsibility of the controller and the 3-part structure your controllers sho...
The Best Way To Send HTTP Requests
Переглядів 45 тис.21 день тому
Join us on Discord, get the source code (and support the channel 🙂): www.patreon.com/amantinband Clean Architecture Zero to Hero: dometrain.com/bundle/from-zero-to-hero-clean-architecture/ Domain-Driven Design Zero to Hero: dometrain.com/bundle/from-zero-to-hero-domain-driven-design-ddd/ All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html In this video we'll cov...
How To Design Amazing REST APIs
Переглядів 11 тис.28 днів тому
Join us on Discord, get the source code (and support the channel 🙂): www.patreon.com/amantinband Clean Architecture Zero to Hero: dometrain.com/bundle/from-zero-to-hero-clean-architecture/ Domain-Driven Design Zero to Hero: dometrain.com/bundle/from-zero-to-hero-domain-driven-design-ddd/ All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html In this video, we'll co...
The 3 REST API Maturity Levels (The Richardson Maturity Model)
Переглядів 5 тис.Місяць тому
Join us on Discord, get the source code (and support the channel 🙂): www.patreon.com/amantinband Clean Architecture Zero to Hero: dometrain.com/bundle/from-zero-to-hero-clean-architecture/ Domain-Driven Design Zero to Hero: dometrain.com/bundle/from-zero-to-hero-domain-driven-design-ddd/ All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html Act Three: The Maturity...
Stop Calling Your API a "REST API"
Переглядів 15 тис.Місяць тому
Join us on Discord, get the source code (and support the channel 🙂): www.patreon.com/amantinband Clean Architecture Zero to Hero: dometrain.com/bundle/from-zero-to-hero-clean-architecture/ Domain-Driven Design Zero to Hero: dometrain.com/bundle/from-zero-to-hero-domain-driven-design-ddd/ All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html Roy Fielding pissed at ...
ASP.NET 8 REST API Tutorial - The "Sweet Spot" Architecture
Переглядів 14 тис.Місяць тому
Get the source code (and support the channel 🙂): www.patreon.com/amantinband Clean Architecture Zero to Hero: dometrain.com/bundle/from-zero-to-hero-clean-architecture/ Domain-Driven Design Zero to Hero: dometrain.com/bundle/from-zero-to-hero-domain-driven-design-ddd/ All videos in this playlist: ua-cam.com/play/PLzYkqgWkHPKCw7zPNV3xnN1JjtglUzB2W.html This video is the first in a series of vide...
Exceptions are evil. This is what I do instead.
Переглядів 17 тис.2 місяці тому
In today's video we'll talk about why exceptions are evil and why you should probably stop throwing exceptions for flow control. Not throwing exceptions will make your code faster, simpler, faster to debug, and easier to maintain. We'll also see the alternative flow control approach which is the result pattern. The result pattern will be demonstrated using ErrorOr, and we'll see how the ErrorOr...
5 C# Naming Conventions I Wish Everyone Followed
Переглядів 15 тис.2 місяці тому
In today's video we'll cover 5 C# naming conventions I think everyone should be following. Naming can play a huge role in making your code more readable and maintainable. It can also reduce the time spent in debugging or figuring out what the heck is going on. Connect with me on 'em socials: Twitter: amantinband LinkedIn: www.linkedin.com/in/amantinband/ GitHub: github.com/amantinba...
ASP.NET Web APIs Explained in 9 Minutes
Переглядів 9 тис.3 місяці тому
In today's video we'll talk about ASP.NET Web APIs. We'll understand what web APIs are, what are ASP.NET web APIs, and how ASP.NET web APIs can looked at as a chain of middlewares that use the Dependency Injection Inversion of Control (IoC) container to manage the application's objects. Connect with me on 'em socials: Twitter: amantinband LinkedIn: www.linkedin.com/in/amantinband/ G...
Stop returning custom error responses from your API. Do this instead.
Переглядів 79 тис.3 місяці тому
In today's video we'll cover the problem details specification (RFC 9457, previously RFC 7807). All HTTP APIs should use the problem details specification, as it defines a consistent, machine readable schema for error responses. So in this video we'll cover what the problem details specifications is, how to use it, and how easy it is to integrate it in your ASP.NET applications. Connect with me...
Dependency Injection Deep Dive | .NET & C# Essentials
Переглядів 17 тис.3 місяці тому
In today's video we'll dive into Dependency Injection in .NET & ASP.NET. We'll cover almost everything you need to know about integrating dependency injection in your applications from the various lifetimes to every single configuration method on the dependency injection Inversion of Control (IoC) container. Connect with me on 'em socials: Twitter: amantinband LinkedIn: www.linkedin...
Making LINQ Blazing fast with PLINQ (Parallel LINQ) | .NET & C# Essentials
Переглядів 18 тис.3 місяці тому
In today's video we're going to cover every single PLINQ (Parallel LINQ) extension method with examples. PLINQ is a powerful and can make your LINQ queries extremely fast. We're going to cover how PLINQ is implemented behind the scenes, what are all the various options, and almost everything you need to know about PLINQ before integrating it in your production applications. Connect with me on '...
Dependency injection fundamentals in C# - DI vs IoC vs DIP
Переглядів 24 тис.3 місяці тому
In today's video we're going to cover Dependency Injection fundamentals. We'll cover Dependency Injection (DI), the Dependency Inversion Principle (DIP), Inversion of Control (IoC, IoC container). We'll talk about what each of these are, what the difference between them is, and how we can apply these principals via an example and leveraging the Microsoft.Extensions.DependencyInjection nuget pac...
Every Single LINQ Extension Method With Examples | .NET & C# Essentials
Переглядів 35 тис.4 місяці тому
Every Single LINQ Extension Method With Examples | .NET & C# Essentials
Why Developers Are OBSESSED With Obsidian
Переглядів 35 тис.4 місяці тому
Why Developers Are OBSESSED With Obsidian
Clean Architecture vs Domain-Driven Design (DDD) - Understand the Difference
Переглядів 29 тис.4 місяці тому
Clean Architecture vs Domain-Driven Design (DDD) - Understand the Difference
This BIG Modeling Mistake Is Ruining Your Performance
Переглядів 11 тис.4 місяці тому
This BIG Modeling Mistake Is Ruining Your Performance
The ULTIMATE Clean Architecture Project Template for .NET
Переглядів 29 тис.5 місяців тому
The ULTIMATE Clean Architecture Project Template for .NET
Understand Clean Architecture in 7 Minutes
Переглядів 81 тис.8 місяців тому
Understand Clean Architecture in 7 Minutes
Winglang in 10 minutes
Переглядів 10 тис.9 місяців тому
Winglang in 10 minutes
.NET in 300 seconds
Переглядів 54 тис.9 місяців тому
.NET in 300 seconds
DDD's Holy Grail
Переглядів 13 тис.9 місяців тому
DDD's Holy Grail
Clean Code Sucks?
Переглядів 10 тис.Рік тому
Clean Code Sucks?
The .NET Extension Method You Should Know About
Переглядів 15 тис.Рік тому
The .NET Extension Method You Should Know About
The complete guide to unit testing structure best practices
Переглядів 27 тис.Рік тому
The complete guide to unit testing structure best practices
How Sharp is Your C#? | Riddle #2
Переглядів 6 тис.Рік тому
How Sharp is Your C#? | Riddle #2
Domain Events | Clean Architecture & Domain-Driven Design from scratch | Part 17
Переглядів 28 тис.Рік тому
Domain Events | Clean Architecture & Domain-Driven Design from scratch | Part 17
Why is everyone getting this riddle wrong? | How sharp is your C# | Riddle 1
Переглядів 7 тис.Рік тому
Why is everyone getting this riddle wrong? | How sharp is your C# | Riddle 1

КОМЕНТАРІ

  • @stillmattwest
    @stillmattwest 8 годин тому

    Hmm... I mean, Obsidian looks pretty good but I've been taking notes in markdown for a long time and I never really find myself wishing it could do more. I think I'm good with that.

  • @marcusalves7
    @marcusalves7 15 годин тому

    great video, would've loved to see also with multiple projects and running migrations

  • @ivandrofly
    @ivandrofly 16 годин тому

    Thanks for the video - Rider IDE as support to generate docker file for your project very easily actually but it's always good to know how to do it manually though

  • @pilotboba
    @pilotboba 19 годин тому

    Doesn't .Net 8 support building docker containers with MS build without using a dockerfile? I'm surprised you are showing dockerfile use here.

  • @eqwerty610
    @eqwerty610 20 годин тому

    Maybe I am outdated on this, but since we have a dedicated step for "dotnet restore", shouldn't we use the "--no-restore" option in the build and publish command, to disable the implicit restore?

    • @matiascasag
      @matiascasag 16 годин тому

      Yeap and i think he could use the Alpine Versions of dotnet to get a smaller binary

  • @joseluiseiguren7827
    @joseluiseiguren7827 21 годину тому

    How do you overwrite the token env variable from a login post request? So you don't have to paste the token manually in the env variables file Thanks

  • @DaminGamerMC
    @DaminGamerMC 22 години тому

    there is a lot there that i dont know like what is `FROM build as publish`

  • @muczos
    @muczos 22 години тому

    Hi @Amichai will you ever do a DAPR content?

  • @user-gl7vl2kw8g
    @user-gl7vl2kw8g 23 години тому

    Do I need to modify the restoration process because I have multiple layers in my project?

    • @amantinband
      @amantinband 23 години тому

      Assuming you meant multiple projects - yes. Here’s an example: github.com/amantinband/clean-architecture/blob/main/Dockerfile

  • @dzllz
    @dzllz 23 години тому

    Very cool! My app runs on an EC2 aws instance and relies on local storage on that instance for storing images etc. What would be the next step for me to dockerize? Outsource the storage to AWS S3?

    • @amantinband
      @amantinband 23 години тому

      I’ll be covering one possible solution in next week's video: The Better Way To Use Docker ua-cam.com/video/JiJeZOHx0ow/v-deo.html

  • @Nursat-np2kd
    @Nursat-np2kd День тому

    Awesome! Really simple explanation

  • @ricardoribeiro4560
    @ricardoribeiro4560 День тому

    Hi, love the videos, can you add to the title the part number? so we can have an order to search later.

    • @amantinband
      @amantinband 22 години тому

      The order in the playlist should be correct. I'm reluctant to add the series number as part of the title since series perform worse on youtube than standalone videos

  • @AslamNazeerShaikh
    @AslamNazeerShaikh День тому

    Thanks ❤ for the video. Also request.. we need more videos on docker with .net distributed architecture. 🎉

  • @chidii
    @chidii День тому

    I thought the presentation is not suppose to know about the domain layer following clean architecture. It should only know the application layer. Then why can we convert the product to response and also convert request to product from the presentation layer.

  • @subramaniannk4255
    @subramaniannk4255 2 дні тому

    Loved the explanation!

  • @shadmansudipto7287
    @shadmansudipto7287 2 дні тому

    Why Authentication service implementation in Application layer but the rest are in infrastructure layer?

  • @nuriaktas9317
    @nuriaktas9317 2 дні тому

    It is awesome but in my framework I need to serialize result to be able to cache and deserialize. As it is struct it cant be serialized and data my cache pipeline doesnot work. Do you have a solution for that? Thank you

  • @chrisnuk
    @chrisnuk 2 дні тому

    It needs NTLM authorisation added

  • @egozMaster
    @egozMaster 2 дні тому

    i dont want create files just for make request

  • @jimmy21584
    @jimmy21584 3 дні тому

    After seeing this, I think the best way to send HTTP requests for this use case is curl or requests.post() for more complex cases. They are universally understood, powerful, and need no extensions or IDE.

  • @exomo1
    @exomo1 3 дні тому

    Nice video. It looks like VS Code or any other IDE that has support for http files can be used a replacement for postman in a lot of cases. Still it's missing some of the features that make Postman a great tool. What I need the most is authentication (e.g. OAuth2) and token management and a way for scripting requests (e.g. calculating a challenge/reponse value).

  • @AndrewKamensky
    @AndrewKamensky 3 дні тому

    Answer: 58 Create Foo = 5 Implicit invoked: 5 + 1 = 6 Compute Foo *=2 Create Foo,rhs Implicit: 2 + 1 = 3 Use previous Foo,lhs: 6 Compute Operation: 6 * 3 = 18 Create Foo return implicit: 18 + 1 = 19 Compute Foo *=2 Create Foo,rhs Implicit: 2 + 1 = 3 Use previous Foo,lhs: 19 Compute Operation: 19 * 3 = 57 Create Foo return implicit: 57+ 1 = 58

  • @TrOgaN_
    @TrOgaN_ 3 дні тому

    I noticed someting strange, while the validation handler is called, validation errors are returned before it calls the handler. You can even comment out the pipeline definition in the dependency Injection file and it still return validation erroros.

  • @uuuummm9
    @uuuummm9 3 дні тому

    Yeah, i remember 25 years ago we had those error codes, but at least there was a reason for that. Inventing new layer of error handing when you Can use standard exceptions looks to me really wrong. The author just took an example of misusing exceptions and solved that with an approach i would never use in my code.

  • @JordanHumbertodeSouza
    @JordanHumbertodeSouza 4 дні тому

    What about when you need to get the bearer token from request a response header? is there a way to update the env variable on the fly?

  • @dealerpriest
    @dealerpriest 4 дні тому

    Superflous use of the phrase "go ahead and..." has popped up all over youtube. I wonder what's the reason behind this?

  • @Fanatic17
    @Fanatic17 4 дні тому

    honestly insomnia is better for defining tokens and variables

  • @mdrafiqulislam2509
    @mdrafiqulislam2509 4 дні тому

    @amichai, please make a video on ErrorOr with minimal api, specially FastEndpoints. I have subscribed to Dometrain for CA and like this approach but would love to see some proper implementation with minimal api and FastEndpoint. Appreciate your content. Thank you.

  • @maroquio
    @maroquio 4 дні тому

    Hello, Amichai. Do you have a special discount for a poor public school teacher from Brazil? 😊

  • @erandafernando94
    @erandafernando94 4 дні тому

    i love you

  • @TrOgaN_
    @TrOgaN_ 4 дні тому

    Hi Amichai, do you have any tutorials on microservices and best practices. I think it would be very popular. Thanks again.

  • @rnavedojr
    @rnavedojr 4 дні тому

    That's cool, but I personally prefer postman because of all the functionalities it has.

  • @kukulis100
    @kukulis100 5 днів тому

    microsoft minion

  • @TrOgaN_
    @TrOgaN_ 5 днів тому

    I'm following this course using .Net 8, so far so good. This was an enlightening section, thanks for putting it together.

  • @frimen310
    @frimen310 5 днів тому

    0:57 URI 3:53 GET method 7:10 POST method 8:29 PUT method 11:19 DELETE method 12:29 Idempotency of methods 15:13 Safety of methods 16:30 Status codes

  • @SouravBanik90
    @SouravBanik90 5 днів тому

    Can we even use this for writing tests? What’s the point of this? Just to send one request? What if we have to generate the tokens every time for sending a request? How to do that? How to store a value from a request to be sent in another?

  • @zebraforceone
    @zebraforceone 5 днів тому

    I use insomnia these days, it's quite good

  • @ZeroInfinityVideo
    @ZeroInfinityVideo 5 днів тому

    And, you don't need any mapping software as well. What is going on? Why are we adding these libraries where you can do it yourselves easily and your project size will be smaller? Are we trying to accommodate not-so-good programmers? Is that why we are having too many hacks?

  • @ZeroInfinityVideo
    @ZeroInfinityVideo 5 днів тому

    I don't understand. What happened to old-fashioned Interface extraction of the data for the ViewModel Why am I adding a stupid library for extra download for no good reason? You can create a ViewModel Folder and each entity, create a folder for itself, and create the interface for it. CQRS, something, Create a folder under the same repository and call one of them Transactions or whatever you want to call it to make it clear, and the other one Query. let your services call it accordingly. Make it clear. You don't need all these things and make your code bigger and bigger by adding unnecessary libraries.

  • @QuintonCraig
    @QuintonCraig 5 днів тому

    Seems like way more work for no benefit other than to avoid postman. MS Edge has basic functionality, imports collections, etx. Probably more useful than this lol

  • @eualexslim
    @eualexslim 5 днів тому

    Great lesson!! What is the name of this tool that you use to generate these arrows and blocks?

  • @TrOgaN_
    @TrOgaN_ 6 днів тому

    I enjoyed working through this Amichai, thanks for all you effort putting this together with the ErrorOr package. I came up with a slighly different approach to the unauthorised issue as I didn't like the Problem call in the controller. I just created an Authorization error in the domain and mapped the Unauthorised status code in the APiController, I then set the login password check to call the unauthorised error type which you kindly created.A possible suggestion for your ErrorOn package in the future would be to map the StatusCodes to the Error types this would make things a lot easier. Thanks again.

  • @vibes992000
    @vibes992000 6 днів тому

    Thanks for the video. Can you also have part 2 of this video where you process the json responses and set new values of environment variables and then send 2nd http request to some another endpoint after that (using json data values from success response data).

  • @egorshiyanov1206
    @egorshiyanov1206 6 днів тому

    How do you get these suggestions in your CLI ?😮

  • @smliwhcirdeirf
    @smliwhcirdeirf 6 днів тому

    Best regards from Germany. Why don't you use Mapster anymore? Are mapper libraries no longer in fashion?

  • @ChrisWard74
    @ChrisWard74 6 днів тому

    So I can do this all in postman. What about populating the variable with a HTTP call? Say I have an API call to get a token and then want to use that token in other API calls? I can do this in Postman, can it be done with this?

  • @brandonbraner
    @brandonbraner 7 днів тому

    If you are using postman for single requests you are missing the power of it

    • @ljoffrey
      @ljoffrey 3 дні тому

      For sure. Bruno is a good alternative too

  • @mko3294
    @mko3294 7 днів тому

    your are so amazing thank you :)