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

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • Dave explains everything you need to know in order to understand and make effective use of Docker. From running Doom to a Web server to an LED controller and more, Dave starts with a simple "Hello World" app and proceeds to build in complexity and power. For my book on the spectrum, see: amzn.to/3XLJ8kY
    Discover Docker Hub: dockr.ly/3WY2a6W
    Download Docker Desktop: dockr.ly/46HFL10
    Follow me for updates!
    Twitter: @davepl1968 davepl1968
    Facebook: davepl
    Primes Language Racing: github.com/Plu...
    Primeview Results Views: plummerssoftwa...
    Errata: At one point I say I'll be using an Ubuntu base image but the code actually uses Alpine, as you can see in the dockerfile on the screen. Sorry for any confusion this caused!

Комментарии • 617

  • @amandioreal2293
    @amandioreal2293 22 дня назад +114

    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 20 дней назад +6

      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 18 дней назад +4

      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 18 дней назад

      Ha, that's a fun fact

    • @kaba_me
      @kaba_me 18 дней назад +1

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

    • @mk553
      @mk553 17 дней назад

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

  • @TheHairykoala
    @TheHairykoala 27 дней назад +36

    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!

  • @BertLaverman
    @BertLaverman 27 дней назад +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  27 дней назад +59

      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 27 дней назад +28

      @@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 дня назад

      @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

  • @chrisj3938
    @chrisj3938 27 дней назад +90

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

    • @Inus
      @Inus 26 дней назад

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

  • @WarrenGarabrandt
    @WarrenGarabrandt 27 дней назад +286

    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 27 дней назад +21

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

    • @whothefoxcares
      @whothefoxcares 27 дней назад

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

    • @olivier8264
      @olivier8264 27 дней назад +3

      @@MarkoVukovic0 ie Hott Stuff icon

    • @MarkoVukovic0
      @MarkoVukovic0 27 дней назад

      @@olivier8264 lol, exactly!

    • @41istair
      @41istair 27 дней назад +19

      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.._ 27 дней назад +169

    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 27 дней назад +1

      Those MEMS device have something beautiful

    • @evertonshorts9376
      @evertonshorts9376 26 дней назад

      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 26 дней назад +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 25 дней назад +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 23 дня назад +1

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

  • @scottmaxwell1927
    @scottmaxwell1927 27 дней назад +7

    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!

  • @chrono581
    @chrono581 27 дней назад +15

    Thank you you explain docker More clearly than any other RUclipsr I have ever seen 👍

  • @NotSure333
    @NotSure333 27 дней назад +15

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

  • @tammymakesthings
    @tammymakesthings 27 дней назад +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!” 😂

  • @prasenjitgiri919
    @prasenjitgiri919 27 дней назад +7

    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!

  • @werdna_sir
    @werdna_sir 27 дней назад +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 26 дней назад +4

      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 26 дней назад +4

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

    • @bigpod
      @bigpod 26 дней назад +2

      @@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

  • @EzzeldinKandeel
    @EzzeldinKandeel 26 дней назад +13

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

    • @fmphotooffice5513
      @fmphotooffice5513 23 дня назад +2

      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 23 дня назад +1

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

    • @koreyspace
      @koreyspace 15 дней назад

      Anyone know how he gets it to look like that?

    • @interimpoint
      @interimpoint 14 дней назад +2

      @@koreyspace cool-retro-term

  • @samanthajarosek9756
    @samanthajarosek9756 27 дней назад +8

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

  • @philosoaper
    @philosoaper 21 день назад +1

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

  • @jo.v-c
    @jo.v-c 27 дней назад +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 27 дней назад +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 26 дней назад +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 26 дней назад +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 25 дней назад

      @@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 25 дней назад

      @@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

  • @riderofthewhitehorse
    @riderofthewhitehorse 26 дней назад +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.

  • @pugington3190
    @pugington3190 27 дней назад +4

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

  •  День назад

    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! :)

  • @macedmondson782
    @macedmondson782 24 дня назад +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!

  • @HaLo2FrEeEk
    @HaLo2FrEeEk 23 дня назад +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!

  • @luffingsails7542
    @luffingsails7542 7 дней назад

    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.

  • @EdwardCox2016
    @EdwardCox2016 27 дней назад +3

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

  • @Xzenergy
    @Xzenergy 27 дней назад +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 27 дней назад +4

      Exactly the same for me!

    • @SubatomicPlanets
      @SubatomicPlanets 27 дней назад +4

      Same for me too!

    • @drescherjm
      @drescherjm 27 дней назад +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.

  • @danieldawson4937
    @danieldawson4937 27 дней назад +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.

  • @MikeBudny
    @MikeBudny 26 дней назад +2

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

  • @joopterwijn
    @joopterwijn 27 дней назад +82

    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 27 дней назад +4

      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 27 дней назад +4

      ​@@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 27 дней назад +2

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

    • @douglascaskey7302
      @douglascaskey7302 27 дней назад +1

      "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 27 дней назад +2

      ​@@CnCDune Also reminds me of The Bartimaeus Sequence

  • @stevenstone307
    @stevenstone307 26 дней назад +5

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

  • @willumpjuh
    @willumpjuh 26 дней назад +4

    Just so you know : DAta (and) Execution MONitor or (IBM's) Disk and Executive Monitor like stated before by others , hence daemon / demon.

  • @diego001
    @diego001 27 дней назад +10

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

    • @Chris.Brisson
      @Chris.Brisson 27 дней назад +1

      DCL unleashed my inner superuser.

    • @DuckDuckWaddle0
      @DuckDuckWaddle0 27 дней назад +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.

  • @hansimuli
    @hansimuli 27 дней назад +39

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

    • @richardokeefe7410
      @richardokeefe7410 25 дней назад

      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 23 дня назад

      Run, Forrest, run! 😂

    • @jasonboles1526
      @jasonboles1526 21 день назад

      as a dad, I approve that joke.

    • @VitoPerleone
      @VitoPerleone 18 дней назад

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

  • @mathewrtaylor
    @mathewrtaylor 23 дня назад

    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 27 дней назад +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.

  • @Crux161
    @Crux161 21 день назад +3

    2:15 _”[…]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".[2] 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.”_

  • @weirdyoda04
    @weirdyoda04 14 дней назад

    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!

  • @Transmute13
    @Transmute13 23 дня назад

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

  • @jackcoats4146
    @jackcoats4146 27 дней назад +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

  • @robspiess
    @robspiess 27 дней назад +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 27 дней назад +1

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

    • @robspiess
      @robspiess 26 дней назад

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

    • @kowoba
      @kowoba 18 дней назад

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

  • @joshuasteward6672
    @joshuasteward6672 23 дня назад

    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 23 дня назад

      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 23 дня назад

      @@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.

  • @andrewr7820
    @andrewr7820 27 дней назад

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

  • @ChopLancer
    @ChopLancer 8 дней назад

    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

  • @MaxShaffer
    @MaxShaffer 26 дней назад +3

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

  • @Tasirith1
    @Tasirith1 27 дней назад +1

    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

  • @JamyRyals
    @JamyRyals 27 дней назад +4

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

    • @DavesGarage
      @DavesGarage  27 дней назад +8

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

  • @YaChoobz
    @YaChoobz 26 дней назад +2

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

    • @Innesb
      @Innesb 25 дней назад +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.

  • @garynagle3093
    @garynagle3093 27 дней назад +1

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

  • @StonerFromThe618
    @StonerFromThe618 25 дней назад +1

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

  • @Pytchblend
    @Pytchblend 27 дней назад +1

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

  • @icarvs_vivit
    @icarvs_vivit 21 день назад +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.

  • @Drewy62
    @Drewy62 26 дней назад +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.

  • @adamploof3528
    @adamploof3528 22 дня назад

    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.

  • @ThomasGanterPrien
    @ThomasGanterPrien 27 дней назад +4

    You mention `ubuntu` to be your favourite distro, hence you would want to be using it as a base image for btop.
    Then, however, you go for alpine.
    Maybe a small oversight.
    Also: there are peculiarities regarding the images and whether it is pulled out not. to be sure a `--pull always` is always safe to use if freshness is your intent,
    Lastly, there is an important distinction between ENTRYPOINT and CMD which is that CMD is replaced by whatever you put onto the `docker run` command line (when you choose to put something there). In you case, ENTRXPOINT would be the better choice, since then you can pass individual options when invoking...

  • @FrankHodsonIII
    @FrankHodsonIII 25 дней назад +1

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

  • @philsbbs
    @philsbbs 26 дней назад +1

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

  • @saulocpp
    @saulocpp 27 дней назад +51

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

    • @DavesGarage
      @DavesGarage  27 дней назад +22

      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 27 дней назад +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 27 дней назад +8

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

    • @CallousCoder
      @CallousCoder 26 дней назад +7

      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 26 дней назад +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.

  • @tk429
    @tk429 23 дня назад

    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.

  • @HeathInHeath
    @HeathInHeath 27 дней назад

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

  • @v9turner
    @v9turner 27 дней назад +2

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

  • @simonlauer9379
    @simonlauer9379 27 дней назад +2

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

    • @robby3467
      @robby3467 27 дней назад +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 23 дня назад

      @@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.

  • @mikaellavoie6811
    @mikaellavoie6811 25 дней назад

    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 27 дней назад

    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

  • @TylerWasick
    @TylerWasick 26 дней назад +1

    Would love to see an advanced Docker and Git videos!

  • @michnl1772
    @michnl1772 10 дней назад

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

  • @lkchild
    @lkchild 27 дней назад

    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.

  • @zzco
    @zzco 27 дней назад +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 26 дней назад

      I knew somebody knew .. Thnx :)

  • @aner_bda
    @aner_bda 26 дней назад +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.

  • @yorokobi9530
    @yorokobi9530 26 дней назад

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

  • @robertfallows1054
    @robertfallows1054 23 дня назад +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.

  • @schmoab
    @schmoab 27 дней назад

    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.

  • @MrGencyExit64
    @MrGencyExit64 27 дней назад

    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.

  • @raymitchell9736
    @raymitchell9736 25 дней назад +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".

  • @mitchyk
    @mitchyk 20 дней назад

    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.

  • @bradmoore1247
    @bradmoore1247 25 дней назад

    Awesome Dave. Love the terminal emulation.

  • @mmahgoub
    @mmahgoub 27 дней назад +9

    That phosphorus terminal though ❤

    • @gabrielebartoli
      @gabrielebartoli 27 дней назад +2

      I love it. I'd like to know how it's set up. I'm 39, but all of a sudden I felt like I was 9 all over again. 😊

    • @mmahgoub
      @mmahgoub 27 дней назад

      @@gabrielebartoliisn't we all are! look for cool-retro-terminal

    • @mmahgoub
      @mmahgoub 27 дней назад +4

      @@gabrielebartoli it is called retro cool terminal

  • @Donald.Archer
    @Donald.Archer 14 дней назад

    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.

  • @KameraShy
    @KameraShy 27 дней назад

    Exactly the introduction that I needed. Thanks!

  • @pfd_mark_taylor
    @pfd_mark_taylor 23 дня назад

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

  • @LSUEngineer1978
    @LSUEngineer1978 26 дней назад

    Thanks. Another informative video from Dave.

  • @pyajudeme9245
    @pyajudeme9245 27 дней назад

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

  • @Vict0rFrankenstein
    @Vict0rFrankenstein 27 дней назад +10

    Docker containers will only share the kernel on linux. On macOS and Windows, a vm is created.

    • @stephencole9289
      @stephencole9289 27 дней назад +1

      Well there are 'normal' Windows containers as well (that share the host kernel although they do have some limitation regarding version matching etc) as well as the 'larger' Hyper-V isolated containers

  • @Dom-zy1qy
    @Dom-zy1qy 19 дней назад

    If I had programmer friends in real life, I would totally buy an "I ❤️ Docker" shirt

  • @gh8447
    @gh8447 26 дней назад +1

    Dave, background processes are not called demons; they're called daemons.
    Yes, I know the words are sometime used synonymously, and the etymology is complicated, but in context you can think of it this way:
    Demon: a malevolent supernatural entity.
    Daemon: a god-like (helpful) guiding spirit.

  • @Glyn-g4q
    @Glyn-g4q 27 дней назад

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

  • @missa740
    @missa740 26 дней назад

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

  • @wtmayhew
    @wtmayhew 27 дней назад

    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.

  • @kaylee42900
    @kaylee42900 27 дней назад

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

    • @CallousCoder
      @CallousCoder 26 дней назад

      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.

  • @Blarpington
    @Blarpington 27 дней назад +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.

  • @kaba_me
    @kaba_me 18 дней назад

    In ancient Greek "daemons" are basically what we call "angels".
    An firewall daemon for example is basically a guardian angel.

  • @troyfred2562
    @troyfred2562 13 дней назад

    Daemon was picked because most Linux nerds were also DnD/fantasy nerds. Daemon is a servant that does things for you. IE, "I summoned a daemon called bob. I sent bob to do my laundry, cook food and kill that village".

  • @victorrael8714
    @victorrael8714 26 дней назад

    my son was just recently diagnosed with ASD Level 1 - High Functioning. now I and my wife are wondering if I should get tested, I'm over 57yrs and not sure if I should, but think I need to.

  • @oledennis6918
    @oledennis6918 22 дня назад

    I have been trying to run some old DOS based ( Fool's Errand )and Windows 3.2 ( Defender ) programs using Oracle's virtual box. I managed to get them running but never had any luck enlarging the "box" they ran in. This sounds like a better app to achieve my goals.

  • @amdenis
    @amdenis 26 дней назад

    The connection to the word "daemon" lies in how these daemons, like the mythological entities, work silently behind the scenes, handling tasks and services autonomously. The metaphor was consciously adopted by Unix creators to emphasize the idea of these processes acting independently and efficiently in the background.
    Later a backronym was latter created and often applied based on "Disk And Execution MONitor", but this was applied some years after initially used.
    So, while "daemon" in the Unix sense is not directly derived from the mythological meaning, it was inspired by it, capturing the idea of a process that works invisibly in the background to serve the system, similar to a guiding spirit.

  • @Impatient_Ape
    @Impatient_Ape 25 дней назад

    Dave, I absolutely LOVE the amber console -- it looks just like the real one I used to write GWBASIC code in the late 80s in the physics department in college. What terminal emulator application are you using to get that effect?

  • @iTriguy1
    @iTriguy1 6 дней назад

    Calling Kubernetes “streamlined” gave me a good chuckle.

  • @JohnScherer
    @JohnScherer 26 дней назад

    Your last few words in this videos were verging on ASMR. That’s what you need, a Dave’s ASMR programming video. Lol

    • @DavesGarage
      @DavesGarage  25 дней назад +1

      "so we put this little variable right here, all by itself..."

    • @JohnScherer
      @JohnScherer 25 дней назад

      ⁠@@DavesGarageI’ve noticed that some of your videos have “interesting” audio tracks playing at or near the end of select videos, that can only hear with headphones ( at least my me). It’s reminiscent of old Pink Floyd albums.

  • @skooby180
    @skooby180 21 день назад

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

  • @tomvanalst8533
    @tomvanalst8533 27 дней назад

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

  • @newenegy2030
    @newenegy2030 27 дней назад

    Great video. Dave, i'm noticing you're using Apple Mac's more frequently. As a long time Windows user I would be curious to see a video on your likes / dislikes of the Mac system - why you are using it over Windows. I don't want to insight violence, i'm just curious. I actually own a Mac myself, I just don't use it that often.

  • @philiprowney
    @philiprowney 21 день назад

    If anyone here ever heard of the Commodore Amiga [ I know you have Dave ] in the dying days on Amiga 'Inc' they developed a system called AmigaDE where you could have full platform independence, portable object code and a very fast run-time cache system...
    It died...

  • @tubejim101
    @tubejim101 27 дней назад

    If you run into porting conflicts (say you want to run 3 web servers and need them on port 443) then poxmox containers are a good option.

    • @bigpod
      @bigpod 26 дней назад +1

      put it behind reverse proxy(just another container)