🧙♂️ 第一节:魔法原理(Docker是什么鬼?)
想象一下:你的魔法咒语在练习室能用,但到了决赛场就失灵!为什么?因为场地环境不一样啊!(就像你代码写得好好的,换个电脑就报错)
Docker就是个魔法胶囊舱!它能把你的魔法(代码)+魔法书(配置文件)+魔法杖(依赖库)全部打包进一个胶囊里。这样无论在哪打开胶囊,都能获得完全相同的施法环境!
(小声说)麻瓜们的解释:Docker是用Go语言写的容器引擎,利用Linux内核的cgroups和namespace实现进程隔离~
🔮 第二节:安装魔法胶囊机(Ubuntu下安装Docker)
掏出你的Ubuntu魔法书(终端),跟我念咒语!
bash
# 1. 先更新魔法词典(软件源)更新你的包列表是一个好习惯。这可以确保你安装的是最新版本的软件包
sudo apt-get update
# 2. 安装魔法胶囊机(Docker引擎)安装完整Docker套件(含compose插件)
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 3. 启动胶囊制造机
sudo systemctl start docker
# 4. 让胶囊机开机自启(省得每次念召唤咒)
sudo systemctl enable docker
# 5. 验证是否安装成功(召唤第一个胶囊!)
sudo docker run hello-world
如果看到一只可爱的鲸鱼背着集装箱朝你微笑——恭喜!你已经拥有魔法胶囊机了!🐳✨
🎩 第三节:魔法胶囊工厂(D核心原理)
3.1 镜像(Image)—— 魔法模具
就像做饼干的模具,里面包含了所有原料和配方。比如:
-
ubuntu镜像:装着精简版Ubuntu系统
-
python镜像:已经装好了Python环境
3.2 容器(Container)—— 活过来的魔法
用模具压出来的活饼干!它是正在运行的进程,但被关在魔法结界里(隔离环境)
3.3 仓库(Registry)—— 魔法胶囊自动售货机
Docker Hub就像魔法世界的亚马逊,存放着成千上万的现成模具!(比如要个Nginx模具?直接下单!)
🎯 第四节:三大酷炫魔法咒语(基础命令)
bash
# 咒语1:从自动售货机拉取模具
docker pull 镜像名
# 比如:docker pull ubuntu:24.04
# 咒语2:启动一个魔法胶囊(容器)
docker run -it --name 我的第一个胶囊 ubuntu /bin/bash
# 咒语3:查看正在运行的胶囊
docker ps
(突然压低声音)告诉你个秘密:Docker容器其实不是虚拟机!它只是被关在结界里的普通进程,因为没有模拟硬件,所以轻快到飞起!🚀
🍄 终极魔法实战:召唤会说话的企鹅!
来,让我们召唤一个会说话的企鹅服务器!
bash
# 拉取企鹅魔法模具(Nginx镜像)
docker pull nginx
# 启动企鹅服务器!(映射端口让麻瓜也能访问)
docker run -d -p 80:80 --name 话痨企鹅 nginx
现在打开浏览器访问 http://localhost ,你就会看到企鹅对你说”Welcome to nginx!”!(其实是个web服务器啦)
💡 为什么说这是改变世界的魔法?
以前部署应用就像搬家要用卡车运整个房子(虚拟机),现在只需要用书包背个胶囊(容器)!谷歌/腾讯/NASA都在用这个魔法!
(魔法帽突然冒出烟花)🎇今天的课程就到这里!记住:Docker不是虚拟器,而是最酷的进程隔离器! 下次我们来学习怎么制作自己的魔法模具(写Dockerfile)!
试着用docker run -it ubuntu bash
进入容器,然后在里面安装个小游戏?(提示:apt install ninvaders)
记住:每个程序员都是数字世界的魔法师!✨