Never install locally

Поділитися
Вставка
  • Опубліковано 2 тра 2024
  • 💜 Support the channel and get some nice perks:
    🔗 / coderized
    🗣️ Discord is now available, come chat!
    🔗 / discord
    ---
    Containers are a game-changing tool for app development and deployment, offering isolated, portable environments that include code, libraries, and OS. Unlike virtual machines (VMs), containers are lightweight and share the host system's kernel, making them faster and more resource-efficient.
    Developers benefit from containers as they allow working in multiple environments simultaneously without compromising the local machine. This ensures compatibility across different machines and platforms, eliminating the "it works on my machine" issue.
    Docker is a popular container platform that uses overlapping layers to form container images. These images can be extended from any previous image or layer, with numerous pre-made base images available for various requirements.
    Using a Dockerfile, developers can add commands to generate new file system layers or metadata layers. Multiple containers can run from a single image, with each container having its dedicated file system layer that persists until the container is deleted.
    Containers can communicate easily, and when an app is ready for deployment, it can be tagged with a unique version and published to a container registry. Modern cloud platforms offer built-in support for deploying containers, or you can install a compatible container runtime on your machine for more control.
    Container orchestration platforms like Kubernetes enable the creation of container-based clouds, providing even greater flexibility and control in app development and deployment.
    ---
    In the video, I cover:
    - Understand containers and their benefits for developers
    - Compare VMs and containers, and their resource usage
    - Maintain multiple environments with containers to avoid conflicts
    - Solve the "it works on my machine" problem with container consistency
    - Explore container images, Dockerfiles, and overlapping layers
    - Use pre-made and officially supported base images for projects
    - Create and run containers using Docker as a container platform
    - Communicate between containers through virtualized network layers
    - Tag and publish container images to registries for storage
    - Deploy containers using cloud platforms or compatible runtimes
    - Utilize container orchestration with Kubernetes for advanced deployments
    ---
    Additions:
    Despite me presenting it as so, containers don't contain a true OS in the full meaning of the word. That's an oversimplification. It's more of an "OS-like" environment. It definitely can act in ways that you'd expect an OS to act, but there are some differences.
    If you use VSCode, check out "Dev Containers" - they are an awesome way to integrate your IDE into dedicated containerized development environments with just a single click.
    Sharing a Kernel with the host does come with some potential drawbacks. Most importantly is that containers would be more vulnerable to attack than VMs should the host machine be compromised. However, containers are heavily used in many large-scale production environments and security can be hardened against such attacks, so it's definitely not a bigger concern than keeping software secure in general.
    ---
    00:00 - Introduction to Containers
    00:24 - Coderized
    00:27 - Containers vs. VMs
    01:09 - The Role of the Kernel
    01:32 - Benefits for Developers
    01:58 - Works on My Machine...
    02:19 - Creating a Container of Your Own
    02:34 - Container Images and Filesystem Layers
    02:47 - Banana
    02:53 - Layers in Container Images
    03:28 - Dockerfile example
    03:42 - Container Runtime Changes and Persistence
    04:09 - Accessing Running Containers
    04:22 - Communication Between Containers
    04:30 - Tagging and Publishing Container Images
    04:51 - Deployment Options and Cloud Platforms
    05:14 - Container Orchestration with Kubernetes
    05:29 - Ending and Support
    #devops #containerization #docker #dockercontainer #dockertutorial #dockertutorials #dockerimage #cloudcomputing #cleancode #programming #code #coder #coding #programmingtips #vscode #container #containerregistry #containerruntime
  • Наука та технологія

КОМЕНТАРІ • 1,9 тис.

  • @UrSoMeanBoss
    @UrSoMeanBoss 11 місяців тому +2346

    dev: "It works on my machine"
    docker: "Then we'll ship your machine"

    • @pequod4557
      @pequod4557 2 місяці тому +53

      Nice one, funny internet user.

    • @Robluex
      @Robluex 2 місяці тому +38

      Funny how instead of fixing the issue of 'doesn't work on clients PC', we pretend the non-ideal bypass is an actual solution.

    • @charactername263
      @charactername263 Місяць тому +9

      @@Robluex But deploying containers is a significantly preferable solution over trying to produce an installer that will account for multiple poorly configured customer server setups. It saves a lot of money. The greatest argument though, is that when you need to be able to rapidly increase the bandwidth in line with rising CCUs, having a containerised deployment means you can pretty much instantly bring online more capacity. It also lets you rapidly deploy hotfixes or updates, being able to know with comfort that some external dependency wont scew you.

    • @Robluex
      @Robluex Місяць тому +12

      @@charactername263 my point was that we never bothered fixing the architectural issue of computers. Having that fixed would save everyone time and money in the long run. Containerization is a short-time bypass. It’s not a better solution, as instead of native, you have to run containers, but it saved everyone resources to try and fix the “must be your pc” problem.

    • @dovi3816
      @dovi3816 Місяць тому +9

      ⁠@@Robluexthat is because the “it works on my machine” problem is not always caused by an architectural issue. Having a different, let’s say, JDK version installed on a developer machine can lead to subtle different outputs in a program that works with timestamps.

  • @zen5066
    @zen5066 7 місяців тому +1297

    He said "badly demonstrated banana", pulled the hardest banana animation to date and thought we wouldn't notice.

    • @untitled6087
      @untitled6087 2 місяці тому +21

      straight out of portal 2

    • @eliokuster4915
      @eliokuster4915 Місяць тому +3

      Yeah for real, had the same thought.

    • @kleiner851
      @kleiner851 Місяць тому +6

      @@untitled6087 we love exploded diagrams

    • @skidadle5473
      @skidadle5473 Місяць тому +33

      "pulled the hardest banana"

    • @Zoooooooooooo
      @Zoooooooooooo 24 дні тому +1

      a hard banana you say

  • @shoebilyas5368
    @shoebilyas5368 4 місяці тому +271

    A brief and up to the point with no bs documented video for anyone who wants to understand the core concepts without/before getting into the development aspect of it.

  • @amirhoseinniknezhad112
    @amirhoseinniknezhad112 10 місяців тому +644

    This video is not only beautifully animated and narrated, it's also incredibly informative and easy to follow despite the content being complicated, a real work of art. I loved it so much I had to log in to leave this comment, something I seldom do. Thank you very much.

    • @coderized
      @coderized  10 місяців тому +17

      Thank you!

    • @ArthurKhazbs
      @ArthurKhazbs 7 місяців тому +9

      Yes! And the animation does an amazing job conveying the ideas in great detail. The author is clearly a genius.

    • @AMindInOverdrive
      @AMindInOverdrive 4 місяці тому +2

      that was very nice of you to comment like that 🙂

    • @habeebmohamed4718
      @habeebmohamed4718 4 місяці тому

      this sounds like an insult

  • @Eurotool
    @Eurotool Рік тому +5255

    This channel is like 3blue1brown and Fireship had a baby

  • @ymi_yugy3133
    @ymi_yugy3133 Рік тому +1984

    Containers are generally great but there are some pitfalls to be aware of.
    1. They don't abstract over CPU architecture. If your application or some library use use is x64 only, I'd won't easily run on an Apple Silicon Mac.
    2. Host systems handle network a bit different. Some allow you to access containers via IP from the host system, some only allow you to access containers on localhost via port forwarding
    3. Different software on the host system, can have a big impact on performance even if hardware is the same or comparable.
    4. Containers are by design not mutable. Having to shutdown and rebuild with every change you make can slow you down significantly when you are iterating.
    5. Containers make it easy to utilize a bunch of dirty hacks to get your code running. This means you are hurt even more when things do break because you need to update some dependency e.g..

    • @coderized
      @coderized  Рік тому +292

      Thanks for the additions although not all this is correct. It's explained well below, by others.

    • @nandomax3
      @nandomax3 Рік тому +99

      It's because of the number 4 I quit developing using containers. Now I use many wsl2 terminals to install different Java runtimes. And inside them I code and run projects locally. Just after finishing a project locally and when I want to deploy it to my cloud dev environment I build the image. And after tested in dev env I build the production image and deploy it to the production env.
      Where I work we also use this workflow and for me it's the most optimal. Sometimes when I want to use a DB locally I run them using container and I use the docker host network, so they work as if in my localhost network

    • @thom1218
      @thom1218 Рік тому +237

      For number 4, you could be using the -v volume mapping feature of docker that maps a part of the host file system to a part of the container filesystem so your compiled changes can reflect immediately within the running container - no rebuild necessary, just restarting the java process (for example) is enough, or if you have hot-reload of class files enabled then you're good to go.

    • @NicolaiNita
      @NicolaiNita Рік тому +29

      @@thom1218 it is also possible to change any other file within the running container, the changes persistent until you delete the container. I do this to test different configurations before including the changes to the final build of the image.

    • @MrVecheater
      @MrVecheater Рік тому +75

      6. compatibility is not really for free because your host kernel still needs to support the features you need
      7. false sense of security: mounts, the host kernel and the X server and bad defaults (like running everything as root inside your container) will remain or become vulnerable

  • @moonlambo5229
    @moonlambo5229 7 місяців тому +76

    This video is a triumph of minimalism and simplicity. Amazing job!

  • @FelipeCampelo0
    @FelipeCampelo0 3 місяці тому +10

    I still can't understand containers but I like this video

  • @pigsweat7763
    @pigsweat7763 Рік тому +293

    i mentioned this once in a response to a comment already but just wanted to reiterate here....videos with no over-editing are so desperately needed here. no rage-inducing constant cuts or interjections of meme pictures and little annoying voices and sounds, no grating distracting background music, no terrible over-hyped voice, just a wonderfully soft spoken lad sharing knowledge. i know its a bit played out but i have to say it, your voice is ASMR worthy for sure. thanks again.

    • @coderized
      @coderized  Рік тому +15

      Haha thank you! Glad you like the style :)

    • @swaranjalsingh1503
      @swaranjalsingh1503 Рік тому +8

      It's like you're reading from documents, but more concisely.

    • @ultimaxkom8728
      @ultimaxkom8728 11 місяців тому +1

      @@coderized Now that sweet ASMR praises has come and pass, let me criticize you on the sound: _you really should edit your wet sloppy sounds out, like many others._

    • @coderized
      @coderized  11 місяців тому +3

      @@ultimaxkom8728 🤤

    • @alionicle
      @alionicle 2 місяці тому

      another channel that fits the description is NoBoilerplate, love both channels

  • @coderized
    @coderized  Рік тому +221

    I wanted to incude this in the video originally but didn't want to get too far off scope -- if you use VSCode, check out "Dev Containers" - they are an easy way to start the IDE inside your perfect container environment, automatically, whenever you open your project.
    Also, despite me presenting it as so, containers don't actually contain a OS in the true meaning of the word. That's an oversimplification. It's more of an "OS-like" environment. It definitely can act in ways that you'd expect an OS to act, for most purposes, but there are some differences.

    • @8jjiyu654
      @8jjiyu654 Рік тому

      VSCode is not an IDE?! o.o

    • @coderized
      @coderized  Рік тому +4

      @@pawekoaczynski4505 Yeah I feel you, but it's still a relatively new feature so I'm hoping it'll mature with time. WSL definitely did! Thanks for the addition, it's great for people to be aware of these current pitfalls!

    • @BusinessWolf1
      @BusinessWolf1 Рік тому +4

      "if you use VSC" as if 99% of all developers ever aren't using vsc bruhhhh

    • @coderized
      @coderized  Рік тому +1

      @@8jjiyu654 It is, why? 🤔

    • @8jjiyu654
      @8jjiyu654 Рік тому +1

      @@coderized I am not an experienced programmer. I had heard that VSCode isn't an IDE. How's it otherwise for you? O.o

  • @manavkhandurie3591
    @manavkhandurie3591 9 місяців тому +166

    I m mesmerized by the production , the sound , the animations , the content , the everything. Keep up the good work

  • @Ermude10
    @Ermude10 11 місяців тому +31

    Dude, the quality of these animations and explanations are amazing! And all the small sprinkles of humour makes this into a very engaging video. Well done! Subscribed!

  • @sodiqayilara1519
    @sodiqayilara1519 11 місяців тому +10

    The quality of the content is beyond. Subbed. As a front end guy trying to know how this docker world works, this is a good start.

  • @neil_from_future
    @neil_from_future Рік тому +6

    Wow, this is amazing! I'm so glad youtube suggested this to me. You can tell how much work and passion went into this. I love it!

  • @norbertvida_
    @norbertvida_ 8 місяців тому +3

    I have been working with software for quite some time but never bothered to learn how docker works because it seemed too complicated for me. You managed to summerize it in a couple of minutes and now I will start using docker, thank you for that :D

  • @henishshah6976
    @henishshah6976 11 місяців тому +6

    From the script to graphics and everything in between, its just perfect!

  • @sauss4472
    @sauss4472 Рік тому +6

    Now this is what we call a BANGER ! Simple , straight and succinct yet perfectly answered the kinda questions required to try gain understanding of these topics. Thank you so much 😊 🙏

  • @beepbop6697
    @beepbop6697 Рік тому +26

    Containers do not contain an "OS". They always use the hosting kernel. The best way to think of containers is that they contain your userland executable(s), and the host kernel keeps the running process and filesystem, network isolated (jailed) from everything else (including other containers) running on the host.

    • @coderized
      @coderized  Рік тому +10

      Yeah in hindsight, maybe it was too much of an oversimiplification with that part

    • @JohnDoe-ng6ec
      @JohnDoe-ng6ec 11 місяців тому +1

      I see. So that's why with containers it sometimes matters what host OS I'm using? Because the container will have a different kernel at its disposal and a different set of executables to use and yadda yadda

    • @beepbop6697
      @beepbop6697 11 місяців тому +10

      @@JohnDoe-ng6ec the host OS will almost always be Linux, as the Linux kernel is what is really providing the process separation that your containers are utilizing. If your host OS is Windows or MacOS, the container software will almost always be launching a (hidden) Linux virtual machine where your containers run. Now Microsoft has created their own thing that allows you to run Windows executables natively as a "container" too, but I haven't played with them. 99% of the time when someone is talking about containers, there is a Linux host OS (kernel) involved. Also, the container image has metadata that indicates that platform architecture (ex: amd64, arm64, etc) because the executables are natively compiled for your processor type -- so when you "pull" a container image from a container registry, the client software (ex: docker) will ask the registry for the image that best matches your processor type.
      Containers best feature, in my opinion, is that they are nice prepackaged bundles (container images) that have all the dependencies baked in: so you aren't fiddling with the host OS and dealing with installing dependant libraries on the host.

    • @baileyharrison1030
      @baileyharrison1030 8 місяців тому +1

      @@beepbop6697Couldn’t that dependency issue be solved most the time by static linking?
      People in the industry often complain about statically linked executables having large file sizes but an equivalent docker image will probably take up even more disk space.

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

      Actually, LXD/LXC containers are 'system containers' that run a full Os and you can manage them pretty much as if they were a physical machinie. Docker and Podman are 'Application Containers', meaning they usually package a single app.

  • @bluepomodoro3679
    @bluepomodoro3679 Місяць тому

    This is my first time coming across this channel and I instantly fell in love with the delivery method and the minimalistic animation used to convey hard topics into simplified lessons. Pure talent.
    You earned new sub and looking forward to your future videos!!

  • @arshitvaghasiya7317
    @arshitvaghasiya7317 8 місяців тому +5

    Great combination of animation + quality sound + minimal design + simple language 🔥

  • @sosaysthecaptain5580
    @sosaysthecaptain5580 Рік тому +31

    Great explanation.
    I'm still convinced that for most applications, Docker creates more problems than it solves. A friend of mine, qualified as an AWS consultant, for purposes of private advice adopts a principle of ec2 maximalism.

    • @lukemorris9857
      @lukemorris9857 11 місяців тому

      That doesn't surprise me at all, cloud VM solutions generally seem to be the current happy middle ground between agility, customisability and ease of use
      It wouldn't surprise me if containers quickly mature in the not so distant future to overtake this though, more sensible defaults alone would make the process less arduous in my opinion

    • @Netist_
      @Netist_ 4 місяці тому +6

      I am strongly of this opinion as well. I understand containers, I use them all the time, but in my opinion their use case is quite narrow. They solve a very specific problem, and they are NOT a panacea. In a desktop environment, they cause far more problems than they solve and I'm pretty fatigued by all the different solutions for containerized desktop applications that claim to finally be the one that gets it right. They all suck, and I intend to happily continue using my package manager and dynamically linked libraries.

  • @sufilevy
    @sufilevy Рік тому +518

    This video is amazing.
    I really appreciate the amount of effort that you put into this, and it shows.
    In particular, I love that there are no visible cuts in the entire video. Just beautifuly animated transitions.

    • @coderized
      @coderized  Рік тому +25

      Thank you Sufi - glad you liked it! 😊

    • @pigsweat7763
      @pigsweat7763 Рік тому +35

      @@coderized seriously, one cannot overstate how absolutely refreshing it is to be able to watch an informative youtube video with out constant annoying epileptic-tier cuts, over-hyped voices, and distracting background music. thank you.

    • @sufilevy
      @sufilevy Рік тому +5

      @@pigsweat7763 Super accurate!

    • @SebasMederos
      @SebasMederos Рік тому

      such an amazing vid

    • @hannahsmith6095
      @hannahsmith6095 Рік тому +2

      Just subscribed.

  • @Babaelow
    @Babaelow 3 місяці тому +3

    The point is: one isnt supposed to containerized every application. It's only serverside stuff. Microsoft Office hasnt been successfully containerized. It needs indeed to be installed locally. At least Desktop Apps. And sometimes you need desktop versions of apps. It's becoming less, but not irrelevant.

  • @tomithyheil8374
    @tomithyheil8374 Рік тому +19

    i just started out as a software engineer and videos like this one help me out a LOT. The fun and well done animations and the informative but not too complicated script really make this a great vid!

  • @fortress5493
    @fortress5493 11 місяців тому +5

    Super intuitive, i like the conbination of animation, text and voice information. I hope you keep posting such videos and succeed in what you do

  • @calopsitarevoltada6109
    @calopsitarevoltada6109 Рік тому +7

    I was actually struggling to understand what exactly was Docker, and seeing a while explanation on containers (and even kubernetes) was really worth watching.
    Loved it!!

    • @johnathanrice3569
      @johnathanrice3569 8 місяців тому +2

      It’s for people that don’t know how to take snapshots of their OS and don’t know what multi process applications are. You can run 65,535 Web servers per nic.

  • @Aly-l-Axy
    @Aly-l-Axy Рік тому +2

    I'm loving your content so far. I can barely wait for your updates. Excellent work, and thank you for the videos 💚

  • @creativecraving
    @creativecraving Рік тому +3

    Thank you for the work you've done to make your audio cleaner. ❤ I know it's a real struggle for a small studio.

  • @darkosimonovski3653
    @darkosimonovski3653 11 місяців тому +4

    the kernel be like the representation of moses in south park xD

  • @thedanyesful
    @thedanyesful Рік тому +9

    Wow this is a great video. I like how you started out with absolutely uncontroversial basics but made it concise and engaging. This is the type of thing that we can link to people with a casual interest and have them get something out of it, but at the same time allows us to learn some good details ourselves.

    • @johnathanrice3569
      @johnathanrice3569 8 місяців тому +1

      There’s nothing faster than running on bare metal. There’s no reason why you need multiple containers sharing a kernel, when instead you can have multiple processes that share the same kernel. … other than that you want to add a layer of emulation in between. You can run 65,535 Webb servers on a single machine with one NIC

  • @luciv_
    @luciv_ Місяць тому

    U saved my life. I've been trying to understand for months what's a container and nobody explained it better as you. Thank you, really ^^

  • @thatguy5233
    @thatguy5233 7 місяців тому +19

    so why are we supposed to never install locally. was it even mentioned in this video?

    • @Bobo-ox7fj
      @Bobo-ox7fj 6 місяців тому +7

      Because the software is so poorly written that it can only run on a system that can instantly throw out a crash and start over without losing work 😬

    • @thatguy5233
      @thatguy5233 6 місяців тому +4

      @@Bobo-ox7fj huh? i think you missed my point. look at the title of the video. it's so misleading, just perfect clickbait example yet noone mentions it, like it's fine. he definitely knew what he was doing. my last comment, i'm not giving this shameless ytber more attention.

    • @vetricanthbarrhead3055
      @vetricanthbarrhead3055 Місяць тому +2

      Lets learn some media literacy!
      Why would someone say "don't install locally" then run through common issues like the too common "it works on my machine" ?
      That's right, because they're implying using docker images to do installation stuff so that you don't have issues when deploying! Look at you, learning so fast

    • @lunchbox1553
      @lunchbox1553 12 днів тому

      ​@@thatguy5233 It's not misleading, it makes sense to a developer, so if you weren't able to connect the dots, then you probably don't need to worry about it in the first place.

  • @1H4NDC14PP1N6
    @1H4NDC14PP1N6 Рік тому +4

    Wow, beautiful video and the best description of containers I've found! I finally feel like I understand what they do and are used for, and after only 6 minutes! Incredible work

  • @tabsc3489
    @tabsc3489 Рік тому +264

    Seriously underrated stuff, another awesome video. I didn't learn anything about containers during my CS degree so this was very informative and answered a lot of the common questions succinctly with a touch of humor that doesn't fail to make me smile. I hope many more find your channel and enjoy these vids as well!!!

    • @coderized
      @coderized  Рік тому +18

      Thank you for the comments Tabs - was really motivating to read this morning! I appreciate the feedback a lot :)

    • @nomathic7672
      @nomathic7672 Рік тому +4

      You likely did learn about hypervisors and operating systems fundamentals, though. These are all prerequisites to actually knowing how a container works and what it really is.

    • @whannabi
      @whannabi 11 місяців тому

      ​@@nomathic7672 if it's just that then yeah

  • @matickovac
    @matickovac 11 місяців тому +2

    Beautifully explained and amazingly illustrated and animated, thank you for your time and effort

  • @gabrielangelo4380
    @gabrielangelo4380 11 місяців тому +3

    This was the most didactic explanation about containers in a nutshell that I had seen. Congratulations and keep going !

  • @haresmahmood
    @haresmahmood Рік тому +3

    This video is insanely well made, and the topic is really well-explained - instant sub!

  • @nickofthyme
    @nickofthyme Рік тому +12

    Great video, keep it up! I always thought that running in docker was consistent across all instances but this is not always the case, particularly when running across different CPU architectures (i.e. arm64, amd64, etc.) where the images use different underlying binaries. The difference is typically small and likely unnoticeable depending on the task.

    • @coderized
      @coderized  Рік тому +3

      Yeah different arches definitely need to be considered, nice addition. Maybe I'll make a part 2 someday

  • @ninedaniel246
    @ninedaniel246 8 місяців тому +1

    What an amazing and engaging video. Great graphics, animations and even the text construction. Great work!

  • @vassdeniss634
    @vassdeniss634 Рік тому +2

    Ill soon dive into devops and this video made me very excited, amazingly well done!

  • @coup460
    @coup460 Рік тому +8

    You definitely should be able to make these full time, these are incredible :)

  • @adityamore9435
    @adityamore9435 Рік тому +7

    Really appreciate your efforts you have put into this video. Kudos! I can't imagine how much time it must have taken for those fun and exquisite animations 😅

  • @clinto2861
    @clinto2861 11 місяців тому +2

    just love the way you describe concepts

  • @gabensstuff6140
    @gabensstuff6140 11 місяців тому +1

    This is a really well made video!
    also the last one was pretty good, the animations are clear, simplistic and expressive.
    the explanation is good.
    all in all: im looking forward for new videos from you

  • @ztokkiz
    @ztokkiz 8 місяців тому +41

    This guy just simply explained docker in 5 minutes. Flawlessly.

    • @rarespetrusamartean5433
      @rarespetrusamartean5433 8 місяців тому

      Not really, he didn't cover...A LOT...like the UEFI settings you need to run one etc

    • @myrusEW
      @myrusEW 8 місяців тому

      @@rarespetrusamartean5433shut up

  • @DavidWeberRepair
    @DavidWeberRepair 11 місяців тому +4

    Not only is this a great video, but the visuals and animations are the cherry on top! Definitely kept my monkey brain entertained while learning something new. Well done, I just subbed and looking forward to watching more in the near future! 😄

  • @huzaifanaseerkhan
    @huzaifanaseerkhan 7 місяців тому +1

    So glad I discovered this channel!

  • @drewc3655
    @drewc3655 11 місяців тому +1

    Dude! great vid, animation, naration, content and flow are all on point!

  • @clunkeys
    @clunkeys 9 місяців тому +3

    I like how this channel is a more calmer version of Fireship's

  • @ornato-t
    @ornato-t Рік тому +10

    I love this video. The smooth animations, clean sound, perfect English pronunciation. Everything is so soothing!
    I guess I should also mention the explanation was very clear and simple, but while there are many informative videos on this site, few are this pleasing to watch. I already knew most of the stuff this video explained when I clicked on it, but I still watched it all because of how good it looked.

  • @raiden631
    @raiden631 2 місяці тому

    Love the energy of the video. It is easy to follow, informative and animated in such a way that keeps our attention going!
    Keep it up. Thanks ☺️

  • @ashen5055
    @ashen5055 11 місяців тому

    One of the best channels I keep coming back and checking for the new ones.
    This video is fantastic as I keeps having issue managing my local app versions.
    I hope this one could be more pratical such as showing some practical examples of managing those docker images.
    Awesome content XD

    • @coderized
      @coderized  11 місяців тому

      Thanks I'll consider some practical examples to accompany these informative types for the future :)

  • @foro1
    @foro1 Рік тому +4

    Excellent video. Enjoyed it 🤙

  • @earthling_parth
    @earthling_parth 11 місяців тому +6

    2:22 Instantly subscribed when I saw the reference of the companion cube from Portal games and obviously extremely succinct and accurate information on containers ❤

    • @fuzzy-02
      @fuzzy-02 2 місяці тому

      Bro, I almost thought it was a terraria pet reference. Then rememberred that it was added as reference to the companion cube and I was like... "poonter of pointer of"

  • @Purplemid
    @Purplemid Рік тому +1

    That was a quality video with a simple explanation. I hope you keep making these.

  • @sudoalex
    @sudoalex 7 місяців тому

    I hope your channel blows up! I loved your video so much 🤩

  • @MrXIndependent
    @MrXIndependent Рік тому +8

    This is the first time I've ever demonstrably understood what containers are and how they work. Thank you very much for your work and your video!

  • @plica06
    @plica06 Місяць тому +34

    Didn't really explain WHY to never install locally.

    • @howdarethee
      @howdarethee 12 днів тому

      Because you can install/run on docker

    • @tilakadroja
      @tilakadroja 8 днів тому +1

      Sometimes packages don't work as expected in different environment, i just ran into this problem today. I wasted 3 hours to setup project locally in windows when i tried to do same in my friend's mac it ran without issue. In my windows it wasn't downloading some npm packages

    • @mythbunkers4716
      @mythbunkers4716 17 годин тому

      ​@@tilakadroja Mac has been integrating a lot of linux tools lately.

  • @moon0xcoder
    @moon0xcoder 8 місяців тому +1

    Great video :). I've been playing around with Docker lately and your video helped my out to better understand how containers work. Ty very much! (I loved the graphics btw)

  • @Ameliaray.
    @Ameliaray. Місяць тому

    This video was recommended to me and is high quality nice work subscribed!

  • @geraltrivyan
    @geraltrivyan Рік тому +7

    I know enough about containerization and its importance, but just cant stop watching because how good this video is done!

  • @Gunzy83
    @Gunzy83 Рік тому +11

    Great video. Glad someone is doing these introduction videos.
    Just wanted to point out that in production containers are much closer to native than VMs in terms of overhead (perhaps 1% overhead at max). Most slowness people experience is due to the default overlay filesystem that is awful and you wouldn't be caught dead using on a production system.

    • @johnathanrice3569
      @johnathanrice3569 8 місяців тому

      Well for one, that’s not a fair test because you’re giving one machine two kernels to run. Guess what’s even faster than containers multiple processes which again all share the same kernel, but without the overhead. take snapshots of your production machines and I don’t see what containers are really simplified other than making it impossible to fix things quickly quickly

  • @WisdomIsAwesome
    @WisdomIsAwesome 7 місяців тому

    It's awesome! So much explained in such a concise manner. Thanks!

  • @RuanBekker
    @RuanBekker 11 місяців тому +2

    Your presentation quality is off the charts!! Well done!

  • @0xc0ffee_
    @0xc0ffee_ Рік тому +39

    I really hope you become famous... the quality of your videos are beyond belief! Keep it up!

  • @BigVirusBoi
    @BigVirusBoi Рік тому +4

    thanks for making this video

  • @user-kl4rd
    @user-kl4rd Рік тому +1

    Oh my gosh these videos are stunningly amazing. You’re so talented I assumed you’d been doing this for years, but I was surprised to see you only have one other which I’ve already seen lol.
    Your work is amazing, but how did you gain so much traction so quickly?! Regardless I’m so happy for you that you have gained so much traction!

  • @oskarsmit9253
    @oskarsmit9253 6 місяців тому

    After having watched multiple videos on this subject this is visually one of the best and most concise. Thank you

  • @sumitpurohit8849
    @sumitpurohit8849 11 місяців тому +5

    Never understood docker and containerization completely. Thanks for making this video.

    • @MR-vj8dn
      @MR-vj8dn 9 місяців тому +2

      Be sure to watch a few more videos about this subject though. What is said in this video it’s not the entire or the only truth.

  • @63avtar
    @63avtar Рік тому +76

    I’m most definitely a visual learner, you’re animations combined with your easy to understand explanations really helped me understand this concept, thanks! I appreciate the small bits of humour too to keep the video engaging, keep up the amazing work!

    • @joshuahampl
      @joshuahampl 8 місяців тому

      ua-cam.com/video/rhgwIhB58PA/v-deo.html

  • @jahwni
    @jahwni 4 місяці тому

    This video is stunning, so well made and really great to watch and learn from, keep making them like this!

  • @henishshah6976
    @henishshah6976 11 місяців тому +2

    This was the first video that I saw on this channel and I have already subscribed.

  • @raghavkhanna6718
    @raghavkhanna6718 Рік тому +3

    "...but that's a VM!" made me smile and even subscribe!
    Thanks a lot for the content🙏🙏

  • @matthias916
    @matthias916 Рік тому +3

    Awesome video, never really learnt about docker and containers but they seem very interesting, will definitely be playing around with them now

    • @coderized
      @coderized  Рік тому +1

      I hope you find them as useful as I have over the years!

  • @mawill432
    @mawill432 11 місяців тому +2

    Once again, great content. I'm rooting for you.

  • @vochikhanh3980
    @vochikhanh3980 11 місяців тому +1

    Your video is amazing, so easy to understand. Thank you so much

  • @manwithllama
    @manwithllama Рік тому +13

    This video is a master class in how to give someone an overview in something new. I’m blown away: ELI5 embodied.
    No background music. No cuts. A calm voice. Humor thrown in. Personality.
    You’ve achieved perfection. Keep doing these! ❤❤❤ And thank you!

  • @spamcolector
    @spamcolector Рік тому +9

    Amazing! As a software engineer, I’d like to say thank you from all beginners. This video is useless if you want to learn containers BUT it will be very helpful for those who don't understand why he has to learn it. Great job ❤

    • @coderized
      @coderized  Рік тому +1

      Thanks! Yeah my goal is to spread awareness and provide a little understanding rather than teach it specifically. I can recommend Techworld with Nana for learning the details :)

  • @donoteatmikezila
    @donoteatmikezila 8 місяців тому

    Great video. I'm sad to see there are only two on your channel. I look forward to seeing more.

  • @sg9257
    @sg9257 Рік тому +1

    This is the best intro to containers a beginner can have. Love this video.

  • @Busterblade20
    @Busterblade20 Рік тому +3

    Great video. I really loved the animation.

  • @PoloEstudios
    @PoloEstudios 7 місяців тому +2

    hell yeah let's keep adding layers to the already falling apart cake.

  • @b00gi3
    @b00gi3 25 днів тому

    Absolutely brilliant video, presentation, and explanation. Really helped me understand! Thanks, coderized!

  • @exp3rim
    @exp3rim 11 місяців тому +2

    Clean and broken into good bits of information.
    Please make more such informative content.
    Thanks.
    Subbed 👍

  • @yorha.a2
    @yorha.a2 Рік тому +4

    Subscribed; you explained in 5 minutes what my lecturer couldn't in 2 hours

  • @kurt7020
    @kurt7020 11 місяців тому +21

    Mostly agree. There comes a tipping point however, when deploying a dedicated server becomes easier - and you can take maximum advantage of the underlying system. We also deploy things on various unix flavors (yes, unix, not linux). Docker is tied to the linux kernel. Pick your tools carefully. Great vid!

    • @slackingsource
      @slackingsource 9 місяців тому +2

      I'm about to set up a NAS server at my job and I'm getting the impression that the only practical way to do that is on the hardware.

    • @jakedrake99
      @jakedrake99 9 місяців тому +1

      Hooray for FreeBSD jails!

    • @gg-gn3re
      @gg-gn3re 4 місяці тому +2

      Containers are useful because most software is messy piles of crap today that needs tons of things intertwined to look good. Many things however are still single monoliths

  • @devstate
    @devstate 11 місяців тому +1

    Wow this video is amazing! Thank you man, you killed it ❤🎉 I like the way you talk, so calm and easy :))

  • @anyonetube
    @anyonetube 4 місяці тому +3

    i think this type of videos needs to be used for all education reasons (what software you used to make this) thank you for taking the world better

    • @coderized
      @coderized  4 місяці тому

      Software info in discord

  • @Raymond0_0
    @Raymond0_0 Рік тому +3

    First time watching your content,i immediately subs for you.

  • @kvnptl4400
    @kvnptl4400 Рік тому

    Thank you for this amazing easy-to-follow video! It was beneficial and informative. I learned so much about containers and Docker in just a few minutes.
    Looking forward to implementing these concepts in my own projects!
    Also, I am definitely going to share this video with my friends. 👌

  • @asim1104
    @asim1104 7 місяців тому

    This is a great video. Please continue making more, love the humor

  • @edgeeffect
    @edgeeffect Рік тому +3

    "the kernel.... close enough" - I'm so old that that made me laugh. :)

  • @methanesulfonic
    @methanesulfonic Рік тому +4

    You ONLY have 2 videos on the whole channel and with this much quality?? I'm betting you'd get 100k subs this year alone

  • @johnpaulgeorgeringo2329
    @johnpaulgeorgeringo2329 Рік тому

    just found this channel and i love it, you've earned a new subscriber

  • @andrasdotsch
    @andrasdotsch 7 місяців тому +2

    Frankly, "works on my machine" is just replaced with "this container works on my machine", and it's because the host's Kernel might not be the same.

    • @setiaki
      @setiaki Місяць тому

      let the container runtime handle the compatibility instead of you handle it by urself

    • @bubis
      @bubis Місяць тому

      ​@@setiakiYou don't understand the problem. If the host's kernel does not support it, you can't do anything. Containers have a (mostly) hidden dependency on the kernel version.

  • @ethancook7730
    @ethancook7730 Рік тому +3

    Im so impressed with how many LOTR refrences you put in that dockerfile part. 9731 is sneaky!

    • @coderized
      @coderized  Рік тому +1

      Very happy someone noticed that 😄

  • @hiibolt
    @hiibolt Рік тому +11

    Fantastic video!
    I use Nix Flakes, however, this perfectly illustrates why solutions like these are so important! People don't understand how bad dependency hell is until they've experienced it, more people need to understand how much easier this makes life.

    • @huantian
      @huantian Рік тому +2

      Was scrolling through the comments to find the other Nix users, glad to see others enjoying the best tool for this job 😎

    • @BrotherCheng
      @BrotherCheng 10 місяців тому +3

      I think one issue I have with over-reliance on containers is that it traps you into a "contain/virtualize everything" mindset instead of properly understanding your dependencies or fixing more serious issues in your architecture. Using containers are not the end of the world but I do think it adds bloat (size, iteration time, etc) if it's not necessary to use it to begin with. Containers is very useful, of course, but it's not a panacea, and sometimes I feel that people who are used to it just default to using it without thinking through the pros/cons.

    • @angeldude101
      @angeldude101 7 місяців тому +2

      Nix seems to be much more granular than most containers. Rather than using a standard pre-configured distro running on top of your primary OS, Nix, using much simpler features, gives you exactly the dependencies you asked for, and _only_ the dependencies you asked for. And then it tries to share as much as it can prove is safe between different environments, which it can get away with because it relies more on path variables than a fixed filesystem hierarchy.
      It's honestly something of a shame that containers and other immutable systems get all the hype, while Nix uses a completely different (arguably better) approach to solve the same problems.

    • @BrotherCheng
      @BrotherCheng 7 місяців тому +1

      @@angeldude101 Yeah. I think this "just use containers for everything" trend and also newer binary app distribution formats like Flatpak have some of the same traits. They essentially say "we don't want to solve the problem of creating a deterministic system", and so we over-virtualize (I'm using the word "virtualize" in a general sense) and re-duplicate everything and call it a day. It does work, but I'm not sure if it's really the best solution. I guess sometimes, the mediocre solution that works well enough and is easy to deploy tends to win.

    • @hiibolt
      @hiibolt 7 місяців тому +1

      @@angeldude101 TOTALLY agree. I think many are put off by the idea of learning a new language (Nix), but then go learn Dockerfile anyway.
      Nix's approach is easily the best, I 100% agree. Flakes further perfect the concept as well.

  • @sly5
    @sly5 8 місяців тому

    This was great, thank you!

  • @gotomt
    @gotomt Рік тому

    Best description ever!!! Keep up the good work!

  • @bagheldevansh
    @bagheldevansh Рік тому +4

    2:21 i want my containers to be like that companion cube!