Check out a free preview of the full Complete Intro to Containers (feat. Docker) course:
The "Introduction" Lesson is part of the full, Complete Intro to Containers (feat. Docker) course featured in this preview video. Here's what you'd learn in this lesson:

Brian Holt gives an overview of the course, explains why containers are a relevant topic for any software engineer, discusses what needs to be installed to follow along, and shares where to file issues with the course.

Get Unlimited Access Now

Transcript from the "Introduction" Lesson

>> Containers are really exciting to me. I started working for Azure, the cloud provider, and so as part of that job, I work a lot on the day-to-day with containers. And so for my job, I had to really dive in and figure out how containers work, how to best serve developers and engineers using containers.

[00:00:18] And so I wanted to share some of that knowledge with you all. So let's go ahead and dive in. I'm gonna click on the Introduction. So just another kind of housekeeping thing, you'll see it here it says, Welcome-Introduction. You can see here that it corresponds to the Welcome section and the introduction part, cool.

[00:00:39] So my course objective at this end of this is to kinda demystify containers for you and make you feel like they're more accessible. So that was part of my problem with containers, I felt like they were an infrastructure thing. I'm a front end engineer or let's just go with JavaScript engineer these days, and so I felt containers were something for the office people and not for the engineer.

[00:00:58] And so I just kind of never approached it cuz I had that kind of conception in my mind. And so my course objective in this is to kind of breakdown that barrier for all of you so that containers are accessible to anyone that's doing any sort of engineering work.

[00:01:09] And I think that can be useful to everyone from the deepest part of operations all the way to designers, right? I think that the containers can be useful to the entire spectrum of people here. So I'm gonna tell you that this is gonna come from an engineering perspective, because that's my background, is front-end engineering and then eventually Node.js back-end engineering and kind of everything in between.

[00:01:31] But I think this can be useful to everybody. And if you've followed any of my courses before, you know the way that I like to break things down. So I like to break go down directly into what makes something work, and then kind of build up from there.

[00:01:44] And show you all the tools, and what problems they solve are. So that's exactly what we're gonna do, we're gonna build containers by hand first. So who are you? It's aimed at a developer demographic. That is again, not to say that it can't be used by anyone else.

[00:01:58] This course does assume like a little bit of Linux knowledge, right? So I assume that you know how to change directory and the very kind of basic Linux sort of interactions to command link. So if this is your first interaction with the command line, you'll probably still be able to follow along but you may not get this much out of it 'cuz you'll be learning command line as you go as well.

[00:02:19] I would suggest taking Jim Young's class for the masters with the full stack engineering which they just dropped V2 of that, which is great. Jim is my co-worker from Netflix. So I love him. He goes over in depth with bash types of interactions, and so that'll be very helpful if that's new to you.

[00:02:42] What else? So you can see here I have my Mac, I'll be doing this on the Mac. I've tested everything on Windows, and I actually have a Windows laptop here. So if anyone watching this live has any questions about Windows stuff, please feel free to ask. And we can switch over to Windows mode and figure this out together.

[00:02:58] If you're on Mac or if you're on Linux, everything should just be fine ready to go. All you need to do is install Docker. If you're on Windows 10, there's a couple extra steps that you might need to go to. If you have Windows Professional, and it's key that it's Professional, not Home.

[00:03:17] Professional, I'll suggest that you install WSL 2. But you can see here I have a link to do that. That stands for Windows subsystem for Linux and it's the second version of it. It allows you to run like Linux directly inside of Windows. It's really cool to have my favorite features of Windows.

[00:03:33] And then there is a preview release of Docker that will connect you into WSL from Docker or from WSL. If you do not have Windows Professional or you don't wanna set up the USL too, cuz it's kinda annoying to set up if we're being honest, then you need to download VirtualBox.

[00:03:54] And VirtualBox and instead of a Ubuntu VM. And I have set up instructions here, so if you click on this, this will just take you to the readme of the class repo, and you can see here I have some instructions for everyone. And if you have Windows Home, then you can follow this blog post here.

[00:04:16] Which is just a article that someone wrote. If you wanna get ahead of the curve and you have Docker running, just go ahead and pull all of these images. This will just save you some time later when we're getting to this point so you don't have to wait for these containers to download.

[00:04:32] You can also do at the time too, there's no rush to as well. Lastly, if you're on Windows and you know PowerShell very well, I think everything in here can be done almost as is from PowerShell. I don't know PowerShell, I know I work at Microsoft. But, yeah, I don't know PowerShell.

[00:04:52] But I do know at least the Docker commands work as is from PowerShell. So that one kind of do at your own risk because if you have questions about it I cannot answer them. Okay, so that was set up instructions. So we have a bunch of mini projects in this class.

[00:05:15] So it's a bunch of very small sections. So for the most part you can skip over something if it's not interesting to you. And then here, in this repo, if you click here, this will take you to a GitHub repo. And here all of the solutions to all of the various different problems.

[00:05:31] So feel free to clone this if you like. Or you can just click in here and reference this particular project, that's kind of up to you as well. All right. For your computer, I would suggest having at least 8 gigabytes of RAM. Containers can eat up a lot of resources, particularly for not careful about it.

[00:05:55] I think this would be possible, this computer here has 8 GB so I can guarantee that everything works well with 8 gigs. And I think you could get by with 4 GB. Good luck. [LAUGH] And the last thing is, if you're on something that is bandwidth limited, this course is gonna use a lot of bandwidth.

[00:06:15] Cuz we're just gonna be pulling and pushing images and stuff like that. So just be aware that if you have if you're in a bandwidth limited situation, that would be a concern. All right, where to file issues? This is all an open source repo on GitHub. So I will drop to a link right there that you can go and file issues or open pull requests.

[00:06:37] I very much encourage that it helps to keep the course fresh and useful for everybody. So who am I? That's me in Paris like two years drinking a beer. It's a very large beer, was very good. Thank you [LAUGH]. My name is Brian. I do work at Microsoft Visual Studio Code, as well as I manage JavaScript across Azure.

[00:07:02] So I'm now a program manager, which is just means that I read a lot of emails and attend a lot of meetings. But for most of my career, I've been a senior JavaScript staff, Node.JS engineer. I've done that at LinkedIn, Netflix, Reddit, and a couple other places as well.

[00:07:17] I'm also on the board for Vets Who Code. I'm not a vet, but I quite appreciate the stuff that they do, so I really like that charity. So I encourage you to take a look at that as well. And feel free to catch up with me on Twitter, GitHub or LinkedIn.

[00:07:33] If you add me on any one of those social networks I was except those. And this course was created and funded by Fronted Masters. I am infinitely grateful for them they give me time and incentive and we love Frontend Masters. And they let me open source the materials as well to share that to everyone, so that everyone can take these courses.

[00:07:59] And then yeah, I get to come film these videos and it's nice even, when it's really cold outside here in Minneapolis. [LAUGH] All right. And as always, it's very nice when people start the repo on GitHub cuz it feeds my vanity. That's mostly all that is. No, it helps kind of like surface the repo so that other people can find it and use the repo as well