Learn Docker NOW! From Hello World to Doom in 15 Minutes!

Поділитися
Вставка
  • Опубліковано 16 лис 2024

КОМЕНТАРІ • 669

  • @amandioreal2293
    @amandioreal2293 2 місяці тому +167

    The term "daemon" comes from Greek mythology, where a "daemon" (or "daimon") was a spirit or supernatural being that was neither good nor evil, but served to assist humans in their tasks. This idea of an unseen helper aligns with the role of daemons in Unix-like systems like Linux.

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

      Indeed, Meriam-Webster defines a Daemon as;
      a supernatural being whose nature is intermediate between that of a god and that of a human being.
      So, more 'powerful' than a user, less powerful than root.
      I've always pronounced it day-mon, either because I'm British, or because I'm pronouncing it wrong... ;-)

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

      It does. Some people argue that that means that it did not originally stand for Disk And Execution MONitor, However, both things are true, at least according to Guy L. Steele, Jr. You see, the term was inherited from Multics,. which both Ken and Dennis worked on. Another guy worked with them at MIT, a Mr. Guy L. Steele, Jr., original author of the Jargon File. The Jargon File says the term originally stood for disk and execution monitor. Since Steele was there when the term was invented, I'm going to lean more towards him being correct on this oine.

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

      Ha, that's a fun fact

    • @kaba_me
      @kaba_me 2 місяці тому +1

      The modern equivalent of the word "deamon" is "angel". An firewall daemon for example is basically a guardian angel.

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

      I thought it was short for 'Devices And Extensions Monitor'.

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

    I've been struggling to wrap my head around docker, the timing on this is perfect. Thank you!

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

      same, i run a node in it so perhaps understanding it a bit more isnt madness

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

    As a non-programmer/IT person starting to play around with the idea of a home lab, I found this very informative. Thank you Dave!

    • @q1337
      @q1337 15 днів тому

      Don't be so humble, there are many programmers that have no idea what Docker is or does, you're already ahead

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

    Note "-rm" should be "--rm" (double minus) and doesn't clean before running, it instead cleans up after running. Otherwise the deceased container will stay around so you can still inspect it.

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

      Indeed... thought I *did* show double-dashes, but the title font might make it look like one long one. Or I got it wrong, one or the other!

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

      @@DavesGarage Also, -it is two flags, -i is interactive, -t is terminal (as in give the container a tty to connect to). It's the "single dash single letter" short options, or "double dash spelled out" long option convention that many CLI tools use.

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

      @DavesGarage Should never use latest version in a production docker container because this will use the latest version which could be different from the one you have tested. You should pin to a specific version instead

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

    The term daemon was coined by programmers at MIT, supposedly inspired by Maxwell's demon. James Clerk Maxwell thought up a demon that was an imaginary agent in physics and thermodynamics that controlled a massless door and let gas particles selectively into and out of chamber, effectively pumping gasses against their normal thermodynamic direction. The programmers thought demon would be appropriate, but they used an older form of the world, daemon, instead.

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

      I love that the FreeBSD mascot is a cute little devil/demon.

    • @whothefoxcares
      @whothefoxcares 3 місяці тому

      why are *satanic socket calls* made collect in Canada's portion of Country Code +1??

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

      @@MarkoVukovic0 ie Hott Stuff icon

    • @MarkoVukovic0
      @MarkoVukovic0 3 місяці тому

      @@olivier_the_dilettante lol, exactly!

    • @41istair
      @41istair 3 місяці тому +21

      Daemons are friendly demons.
      This extract from 'ThisVsThat' is helpful:
      Attribute Comparison
      Origin
      Daemon: Derived from Greek mythology
      Demon: Derived from various mythologies and religions
      Nature
      Daemon: Generally neutral or benevolent supernatural being
      Demon: Generally malevolent supernatural being
      Representation
      Daemon: Often associated with guiding or protecting individuals
      Demon: Often associated with evil, temptation, or torment
      Religious Context
      Daemon: Can be found in ancient Greek, Roman, and Neoplatonic beliefs
      Demon: Found in various religious traditions, such as Christianity, Islam, and Buddhism
      Pop Culture Depictions
      Daemon: Commonly portrayed as helpful or neutral entities in modern literature and media
      Demon: Often depicted as malevolent creatures in horror and fantasy genres
      Etymology
      Daemon: Derived from the Greek word "daimon" meaning divine power or spirit
      Demon: Derived from the Latin word "daemon" meaning evil spirit or devil

  • @Danny.._
    @Danny.._ 3 місяці тому +171

    from wikipedia: The term was coined by the programmers at MIT's Project MAC. According to Fernando J. Corbató, who worked on Project MAC in 1963, his team was the first to use the term daemon, inspired by Maxwell's demon, an imaginary agent in physics and thermodynamics that helped to sort molecules, stating, "We fancifully began to use the word daemon to describe background processes that worked tirelessly to perform system chores". Unix systems inherited this terminology. Maxwell's demon is consistent with Greek mythology's interpretation of a daemon as a supernatural being working in the background.

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

      Those MEMS device have something beautiful

    • @evertonshorts9376
      @evertonshorts9376 3 місяці тому

      Further to this, ITS called them "dragons", WAITS calls them phantoms, and another (OS/360?) calls them ghost jobs. It seems mythological and supernatural creatures is how you name these things

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

      When you copy and paste from Wikipedia, give them CREDIT for it. Otherwise, it's called plagiarism. Unless you are the author of said article.

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

      @@zyntolaz Not quite. You have entered a grey area where a small relevant portion is allowed for copy/paste in certain quantities and certain circumstances. However, it is preferable to at least say where it was copied from, which @Danny.._ did.

    • @ORLYWTF
      @ORLYWTF 2 місяці тому +1

      If that’s accurate, then wouldn’t it be pronounced like the Greek “daimon” and not “demon”

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

    Your terminal is the best looking terminal I've ever seen.

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

      Amber CRTs used a coveted phosphor, easy on the eyes. I concur. I try to always replicate something similar, even on closed caption options on TVs.
      Edit: See Wikipedia on the word "Phosphor". Half way down it gives the chemical combinations used for the different colors in mono CRTs.

    • @EzzeldinKandeel
      @EzzeldinKandeel 2 місяці тому +1

      @@fmphotooffice5513 Thank you for letting me know what they were called. I was curious about that.

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

      Anyone know how he gets it to look like that?

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

      @@koreyspace cool-retro-term

  • @haariger_wookie5646
    @haariger_wookie5646 18 днів тому

    Docker is this beast that is so important I always assumed it would be hopelessly complicated. You video provided a good start and I think I am equipped to explore more on my own.
    Thank you Dave!

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

    Dave, your voice, storytelling abilities, and video processing techniques are absolutely fantastic! And not the mention you are one of the coolest geeks I have ever come across. I wonder how you did that terminal turn to a billboard. Thats a pretty amazing. How about a couple of videos/tutorials to go on to do so for the rest of us? Thanks in advance!

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

    This video goes straight to my library. Thank you so much Dave.

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

    Great intro to Docker. I use Docker to run a Storj node. It was easy to setup and now earns me a little bit of crypto every month.

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

    Great video as usual Dave! Docker has been a revelation since learning how to use it a couple of years ago. Like you, I use it to run many of my homelab services (managed by Portainer). Furthermore, I run a small geoscience consulting business and often perform exploratory data analysis and visualisation of geoscientific data using Python, and while the client is usually not interested in the detail I always package up and deliver that work in a docker container so they have the option to revisit it in the future.

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

    I was trying to get Immich set up a while ago but docker was alien to me. No one on reddit was willing to explain. Thank you!

  • @jo.v-c
    @jo.v-c 3 місяці тому +17

    Have tried a few times to figure out what the heck folks find so helpful about Docker for deployments that couldn't just as easily be solved by paying attention to documentation. This was incredibly helpful - the "layering" element of it, in particular, was 100% new to me despite having gone through several different "introduction to" tutorials before and made it immediately go from "lazy curiosity" to "wait, that could be incredibly useful" in my head. Many thanks!

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

      [this comment was written in jest, but as has been pointed out, it contains fast more snark than I'm comfortable with after reflection. I'm leaving it here so that the follow-up comments didn't get lost, and as an example of how I should try harder to be better]
      If you were previously unaware of layering, may I suggest that you practice the "paying attention to the documentation" that you mentioned?

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

      its not about not paying attention to documentation its about not having to mess with host system it remains relativly clean while you can treat containers as cattle and remove them whenever necessary and do on

    • @jo.v-c
      @jo.v-c 3 місяці тому +2

      @@TracyNorrell It's never been made clear in any of the references I found. Never went deep into the weeds before. It's just always been about The Glories Of Containerization and Dockerhub. Neither of which are inherently appealing as we already have a sizeable VM-based setup.

    • @DavidLindes
      @DavidLindes 3 місяці тому

      @@TracyNorrellif you were previously unaware of the concept of politeness… oh, never mind. (😢/😉… this is half serious, half self-aware hypocrisy, and half joke. Give or take a half somewhere.)

    • @bigpod
      @bigpod 3 місяці тому

      @@jo.v-c layering isnt even that of an important features more important is as i said keeping host clean without leaving quarter of the resources on the table by using VMs and creatingbimages is far simpler of a process then creating vm disks so it makes the cattle not pet mentality much easier

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

    Great video, Dave. I really love how to the point your content is, and i always learn something new even if i felt i was knowledgeable about the subject. I would love to see more docker content!

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

    I appreciate this video, because even though I’m a professional software developer I’ve never really understood what scenarios someone would need docker for. I only know of docker as something the “teachers pet” type kids in college swore by, for some reason. But watching this video has done a better job of at least demonstrating some potential use cases for docker, albeit use cases I don’t encounter in my daily work. Thanks, Dave.

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

      I am a bit surprised as a fellow 30+ years software engineer that you did not come across docker in any project. It is hard to image any software development project that is not using docker in some forms of buiding jobs, test runs etc.

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

      @@DerIchBinDa well I haven’t been in the field for too terribly long, but the company I work for makes apps using the Unity game engine, which handles a lot of the build operations in the background.

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

    Thank you you explain docker More clearly than any other UA-camr I have ever seen 👍

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

    Whoohoo! I can see clearly now. I finally understand Docker. Thanks Dave.

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

    Definitely have a look at the Portainer package.. makes it easy to see what you are running and to control running docker containers. Also makes it easy for installing new ones

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

    You are the third tutorial I've watched tonight trying to get the concept of Docker through my thick skull. I still don't get it, but I have to give you kudos for at least providing a lot of concrete demonstrations of what it's used for. The other tutorials I watched just provided a lot of abstract theoretical uses which were not helpful.

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

    Love the content. I started playing with Docker because of your videos on hosting your own AI. I also appreciate that you tell us when you dont know a thing. Keep up the great work.

  • @HaLo2FrEeEk
    @HaLo2FrEeEk 2 місяці тому +1

    This is really gonna help me. Like many others, I've struggled wrapping my head around Docker, but this was both informative and entertaining. I'm already subbed, don't worry :)
    I really want to read your books but I don't have the time/desire to sit and read a book. I would absolutely *love* it if they were made into audio books at some point. If that ever happens, let me know!

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

    I have been avoiding learning this for so long! Thank you!

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

    I recently had to explain some of these concepts, and I’ve got reassurance from your video and much much more. Thank you very much, please keep it up! :)

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

    Love the continuity when building the container, "I'll be using ubuntu because it is the distribution I'm most familiar with..." to "FROM alpine:latest". LOL. Great vid Dave! Indeed, very helpful.

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

    Super informative. I've yet to touch docker because it seemed too daunting, but you broke it down well. I'll give this a go thanks to your video. Thank you.

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

    Been a sub for years and love the channel! Awesome explanation of docker! I remember back in vmworld (I think 2014 of 2016) when I was first introduced to docker as it was the big theme that year and now seeing it as a daily driving production system that fortune 100 companies rely on and has shaped app development and web development.

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

    Thank you so much for this video! I'm upskilling in DevOps and have followed your channel for nerdy Microsoft content but I really love how you break down things and would really see the value in more of this type of video, thank you again from Australia!

  • @philosoaper
    @philosoaper 2 місяці тому +1

    I'm very much looking forway to truenas getting proper docker/compose support in the next release. So good timing on this!

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

    Thank you for this. I'm aware of Docker but had no idea how they were run or worked. I do now!

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

    You're the man, Dave! Love learning from you!

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

    Gosh. Having to deal with Dockerfiles reminded me so much of writing JCL.

    • @Chris.Brisson
      @Chris.Brisson 3 місяці тому +1

      DCL unleashed my inner superuser.

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

      @diego001 especially if the container has an abend 😂
      OK now I've dated myself, which, as phrases go, is impossible to do without a parallel universe & some way to get to it.

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

    What a coincidence! I've been trying to learn docker and just recently started watching your videos. To see a docker video by you today was a pleasant surprise!

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

      Exactly the same for me!

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

      Same for me too!

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

      I started a looking at docker again 2 weeks ago. For the last 27.5 years I work in medical imaging research as mostly a c++ software engineer but also the primary network admin. I am learning docker to both support the many users in my department who use it for AI and to see if it can help me solve some of my problems with my own projects more efficiently and more automated.

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

    I used to have a boss whose response to “but it works on my machine!” was “that’s great, but I can only sell your machine once!” 😂

  • @andrewr7820
    @andrewr7820 3 місяці тому

    Love the part at the end in sotto voice. Great content as always.
    Cleared up some misconceptions I had about Docker. Thanks, Dave.

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

    Dave has a great channel here, I have learned so much about both computers and myself. Extremely grateful!

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

    Docker is the best tool I've used in my programming journey so far. Such a powerful thing

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

    You made it so easy to understand. Thanks again for your wonderful explanation and great video!

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

    I really enjoyed this video even though I already work with Docker. 👍🏻👍🏻

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

      Hope I wasn't wrong too often... you know how it goes when someone in the "media" covers something you know well!

  • @HeathInHeath
    @HeathInHeath 3 місяці тому

    Thank you for this discussion. I'm more interested in working with Docker after hearing your take.

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

    Imagine if people at id Software ever thought a Doom installation would take 1GB one day.

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

      I was thinking that! Not sure why it's so large, other than it includes the guts of a linux distro... but 1G?

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

      ​@@DavesGarage If you were able to play it in-browser, does that mean it was a WebGL version of Doom? Maybe that's where the extra space comes from

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

      @@carbon3293 its just lots of well timed screenshots in bmp format
      /i kiiiiiid, i kid

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

      Yeah! Insane! A program that was shipped in a 1.44MB floppy now needs a whole support environment that is 1GB, get real! You’re even better of just installing dosbox (single binary) and run doom inside of that 😂

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

      @@CallousCoder "Better" is always as subjective term. If you want it to run in a browser, then you need the whole support infrastructure that goes into a full web server, and probably (though I don't know) all the files for WebGL for the various platforms to pull files from. It's also probably mp3 or something for the sound track, as I doubt midi would work reliably in all web browsers.

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

    thanks for the btop mention just installed on all my linux machines

  • @stacyanderson3001
    @stacyanderson3001 22 дні тому

    The term daemon was coined by programmers at MIT’s Project MAC in the 1960s. They were inspired by “Maxwell’s demon,” a hypothetical being in physics that works tirelessly in the background to sort molecules. This concept seem fitting for background processes that perform system tasks without direct user interaction and work unseen to manage system functions.

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

    keep up the great work dave! loving the videos man.

  • @robertfallows1054
    @robertfallows1054 2 місяці тому +1

    I installed Docker recently not knowing exactly what its purpose is. Not the smartest move but now after watching your video I feel much smarter! Thanks.

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

    Note that, if you are running Docker inside a virtual machine, you'll need to enable nested virtualization. For example, in VMware's ESXi, you'll need to edit the .VMX file and include "vhv.enable = TRUE"

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

      Perhaps if you're using Docker on Windows (through WSL that might use virtualization), otherwise it shouldn't?

    • @robspiess
      @robspiess 3 місяці тому

      @@troos5800 Ahh, yes, you are probably correct. My experience was only with Windows.

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

      On macOS Docker also spins up a Linux VM on the native hypervizor (which is a continuation of xhyve, ported from FreeBSD bhyve)

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

    2:23 "Why not call them Forest Gumps, they're always running."
    🤣🤣

    • @richardokeefe7410
      @richardokeefe7410 3 місяці тому

      Yeah, but daemons were invented LONG before Forest Gump. And of course daemons *aren't* always running. Some of them are only started on demand.

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

      Run, Forrest, run! 😂

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

      as a dad, I approve that joke.

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

      Timing and history. Gump was created 3 decades too late. 😁

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

    For something like a webserver, you don't necessarily need to make all your ports available outside, for example, you can reverse proxy to the container ip and port (if not 80). Then map them to either a subdomain or subdirectory (some webspps dont run that way). I have an nginx container, Metabase reporting container, pgadmin container and a django site in a custom container all proxied through nginx. They just need to be on the same docker network. Only nginx needs to be defined as a port

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

    Three Thumbs Up!!! Had to RTFM on the Doom image on Docker Hub to get 'er going on Windows, but I did. Excellent into to Docker. Thank you!

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

    Would love to see an advanced Docker and Git videos!

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

    I hope you do a part 2 to docker. I really want to start playing with it and want to see what I can run in it.

  • @icarvs_vivit
    @icarvs_vivit 2 місяці тому +1

    I'm pretty sure daemons are called that because they will act mostly independently of the user's input or direction, and you have to basically hail them to "convince" them to change their behavior.
    That spelling hearkens to the ancient Greek concept of δαίμον, being a transliteration of it, and refers to essentially an independent god, a powerful actor among many with its own will, predilections and abilities.

  • @semilife
    @semilife 28 днів тому

    Wow why have I not used this previously? Thanks Dave.

  • @AD-Dom
    @AD-Dom Місяць тому

    Learning stuff I didn’t know I needed to! Thanks!!

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

    Ok. I found this interesting and entertaining…. Actually loved it. Thank you

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

    would love a deep dive into what makes docker work in the first place

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

      That would be great. I'm still rather clueless as to what's actually going on with these things. VMs are conceptually easy to understand. Containers not.

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

      @@robby3467 Basically Containers are in simplistic terms like VMs but stripped to the bare bone without needing a complete hardware/OS layer to be emulated as well.
      More lightweight, easier to scale.

  • @bradmoore1247
    @bradmoore1247 3 місяці тому

    Awesome Dave. Love the terminal emulation.

  • @mikaellavoie6811
    @mikaellavoie6811 3 місяці тому

    Rented myself a vps to have fun with docker. Petty neat technology, particularly used with docker-compose to create complete configuration with special communication channel. Lots of fun!

  • @dcchillin4687
    @dcchillin4687 3 місяці тому

    ive been using premade dockers for about a year but this explanation gave me a much better picture. id love too see more docker + LED as im trying to learn both lol

  • @yorokobi9530
    @yorokobi9530 3 місяці тому

    Thank you, that's on my projects list for my NAS.

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

    Your voice... Good for the radio ... a new doctor Frasier Crane!

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

    Great video.
    As a PenTester, ill just add that Docker containers are isolated for the most part, but 'container breakout' is a thing. As an example, if i manage to exploit a webserver hosted on a container, exploit code execution and establish a reverse shell on the container, it is possible to talk to the host OS.

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

      of course but so is breakout of VMs(known as VM escape) any kind of such system(sandboxing or shall we say logical partitioning) will potentailly have breakout posibility which is why you need to on host do security like not running as root give user as little privileges and so on

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

      @@bigpod Yeah. Privilege escalation is a whole thing, too.

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

      @@werdna_sir at the end of the day security is more of ensuring there are more nad more layers between them and what they want more then anything

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

      Good luck without docker socket mounted into container

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

    Your commands for building btop died in a fire, but I learned what I needed to. Thanks!

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

    Daemon is a great "backronym" for Disk And Execution MONitor.
    BTW, the book (and the following series) "Daemon" by Daniel Suarez is AWESOME!!

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

    Loving the interlaced amber terminal screen…takes me back to DOS3.x days. Do you remember the old PC Tools apps 😃

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

      Funnily enough amber is my preferred colour for a terminal screen; I also thought the interlacing was a nice touch, but I don’t think I’d like to use it in practice. My first PC monitor looked like that! I remember PC Tools. I think it was by Central Point software. Where I worked (late 80s early 90s), we installed it on every PC. It came in a massive package with a separate printed manual for each utility.

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

    Thanks Dave, I have been wondering about this for ages.

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

    + 1 thumbs up. Thanks Dave. Love your work.

  • @MrGencyExit64
    @MrGencyExit64 3 місяці тому

    I was surprised to learn that Docker even sponsors videos :) I have used it all the time, but never paid anything for it. I guess they have enough enterprise users that normal users can go their whole lives without realizing Docker is a commercial product.

  • @schmoab
    @schmoab 3 місяці тому

    Hah I’ve just been working on a similar presentation on Docker. I’ve been really impressed by all the features packed into Docker desktop. A lot less command line debugging now.
    This was great. I’d love to see you do something about performance testing in depth.

  • @lkchild
    @lkchild 3 місяці тому

    Daemon stands for Disk and Execution Monitor. It’s an application that’s monitoring execution and disk access and doing a particular job when it sees something, kind of like a TSR.

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

    Docker! Docker! I've got a bad case of loving you.

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

    Dave you're a master at taking something potentially dry like the benefits of containerized applications and making me laugh multiple times over the course of the video. Well done.

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

    I laughed so hard at the Forest Gump comment I literally had to pause the video.

  • @LSUEngineer1978
    @LSUEngineer1978 3 місяці тому

    Thanks. Another informative video from Dave.

  • @KameraShy
    @KameraShy 3 місяці тому

    Exactly the introduction that I needed. Thanks!

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

    The term “daemon” in Unix systems was inspired by Maxwell’s demon, an imaginary being from a famous thought experiment. This demon constantly works in the background, sorting molecules. Unix developers adopted this term to describe background processes that perform system chores1. These daemons silently monitor and maintain subsystems to ensure the operating system runs smoothly

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

    It is spelled Daemon, pronounced "DAY-Mon" It is the angelic counterpart to an evil demon pronounced "DEE-mon"... but some people don't know how to read or pronounce it, and just started calling them demons and we're stuck with it ever since. I guess a demon would be a badly formatted Crowd Strike file... Ooh... Too soon??
    I also did a Google query and got this: The term "daemon" was coined in 1963 by MIT programmers from Project MAC. They chose the word because it accurately described a background process that works continuously to perform system chores. The word "daemon" comes from the Greek word daimon, which means "god" or "protective spirit".

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

    Minor nit. For docker run the -it argument is actually two separate args: -i to keep STDIN open, and -t to allocate a pseudo-TTY. Of course, I've never needed to use them individually but my OCD would want a multi-character arg to be --it, not -it!

  • @Glyn-g4q
    @Glyn-g4q 3 місяці тому

    Love your vids. So informative. Keep them up. Great work.

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

    Excellent Content as Always ..!!! Thank You for sharing .. Cheers :)

  • @wtmayhew
    @wtmayhew 3 місяці тому

    Dave, it is “daemon.” A daemon is a guardian angel. The metaphor is that a background system process which keeps watch for things which need to be taken care of, for example the _lpd_ line printer daemon.

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

    Internet search: In Greek mythology, a daemon was considered a supernatural being or power. The MIT programmers thought demon would be an appropriate name for a background process that worked tirelessly to perform system chores. But instead of using the term demon, they used daemon, which is an older form of the word.

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

      Refinements: like demons you don't see them but can call out to them and they tend to have huge powers. (because they run as the "super user" named root) In Windows it either depends on a VM running Linux that in turn runs the containers, or WSL.

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

      ​@@BertLaverman Note that daemons need not run as root. It's a quite normal program that has detached from the console. The huge majority of daemons really should not run as root. So a web server would normally run as a custom web user, to limit the machine accesses if it ever gets hacked.

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

      Reminds me of the "His Dark Materials" series, I remember it was called - the one with the Golden Compass.

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

      "There are four main words at play here: spirit, ghost, daemon, and demon. The essential difference between a "daemon" and a "demon" is that a daemon is any spirit, good or bad, including the spirit of a living human, while a demon is exclusively a bad spirit."

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

      ​@@CnCDune Also reminds me of The Bartimaeus Sequence

  • @missa740
    @missa740 3 місяці тому

    I don't program, but i know you and your many fans are intelligent! Thanks

  • @3d1e00
    @3d1e00 2 місяці тому

    Daemon came from ancient Greece. Essentially like a muse. The voice of inspiration if you like. Similar to a process sitting in the background guiding activity in computing.

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

    Tk U for sharing, giving Docker a try.

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

    In this interesting history, which is the actual description of the origin of this use from Professor Corbato, he explains that daemon originally had the connotation of "an attendant ... or indwelling spirit" and that:
    By the late 16th century, the general supernatural meaning was being distinguished with the spelling daemon, while the evil meaning remained with demon.
    He goes on to share the story of Maxwell's daemon. Maxwell was a 19th century scientist who'd posed a physics problem in which a tiny daemon was the attendant at a gate between two chambers that was large enough for a single molecule to enter. The daemon observed the molecules and chose which ones to allow to pass through the gate.
    So now we come to the crux of it. We have established a daemon as an attendant, and a scientist used a hypothetical daemon in a famous problem in which the daemon's job was to monitor molecular movement. Professor Corbato wraps up his explanation with
    As you probably know, the "system processes" called daemons monitor other tasks and perform predetermined actions depending on their behavior. This is so reminiscent of Maxwell's daemon watching his molecules that we can only assume that whoever dubbed these "system processes" had Maxwell's daemon in mind.
    The history also notes that Professor Saltzer, who also worked on Project MAC with Professor Corbato at the time "daemon" came into use for this purpose, confirms that this is the origin of daemon as it is used in computing.

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

    very interesting. I finally understand what docker is and does. Thank you for the clear explanation.
    Can you tell me about your terminal. I love the vintage look.

  • @kaylee42900
    @kaylee42900 3 місяці тому

    Docker is so freaking awesome. Containers have saved me and my teams so often.

    • @CallousCoder
      @CallousCoder 3 місяці тому

      And yet it’s a workaround for a bigger problem. And that is that we don’t have good software anymore that just is a single binary application with single directory anymore.
      It’s all shit these days. Dozens of scripts files, stupid web layers, database servers that could just be a database file or an even a tekst file.

  • @pyajudeme9245
    @pyajudeme9245 3 місяці тому

    Well done! More tutorials, please! You explain very well!

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

    I was always just under the assumption that daemon was an acronym of Disk And Execution Monitor. Something that just sits and waits for something to happen and acts on it. I didn't think there was anything deeper than that.

  • @tomvanalst8533
    @tomvanalst8533 3 місяці тому

    Thank you for Excellent intro and foreseeable project ideas, thinking of applying to IoT projects.

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

    And now i really need video about your terminal, please)

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

    Excellent video

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

    A billion other commentors have given the origin, but the pronounciation for a computer daemon is also DAY-MON, not the modern DEE-MON.

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

    The term dæmon originally stood for an abbreviation of, 'Disk And Executive MONitor', coming from Project Mac on the IBM 7094.

    • @willumpjuh
      @willumpjuh 3 місяці тому

      I knew somebody knew .. Thnx :)

  • @Donald.Archer
    @Donald.Archer 2 місяці тому

    I love running things in docker. the best part, is when you don't want it running, you turn it off... for instance, I have my MSSQL running in docker, but when I am gaming, and need the extra little resources, I can turn off docker, and don't get stuck with things running in the background. I also have a minecraft server for my kids in docker, so when they want to play, I turn it on, then turn it off when not needed.

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

    Two questions:
    What is the performance overhead of running code in a docker container vs on bare metal?
    What security concerns are there downloading/running containers from unknown sources? Are there steps that should be taken to minimize potential configuration backdoors in containers?
    Was that three questions... I've never been very good at math.

  • @drstefankrank
    @drstefankrank 2 місяці тому +1

    As a sysadmin docker is mostly a pain in my environment. The main problem I always have with it is that I usually patch all my systems regularly to make sure they are free from known security bugs. Either via apt or ansible for mass updating. Some systems even on unattended upgrades. Now the devs deploy docker images with old webservers, php, libraries and so on and I have no chance of fixing any of these bugs, because I'm not able to update their images. So since docker became a thing, my servers became more insecure. Having devs in charge of security never worked for me.

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

    Whenever I am trying to compile a C++ program that has a multi page compilation instructions I think there should be a docker container that documents the build environment. Sometimes you follow the instructions and things are still missing that you need to build successfully.

  • @hawser2088
    @hawser2088 3 місяці тому

    This is very interesting. I want to run Stars! by Jeff Johnson and Jeff McBride. I will have to look into this.
    Thanks Dave