Docker 入门:从安装到跑起第一个容器
一、先说说为什么要用 Docker
我第一次认真接触 Docker,是因为一个很小的尴尬:练习项目在本机运行得好好的,换到另一台电脑上,却因为运行版本和依赖库不一致,折腾了大半天。从那以后我才意识到,很多时间并不是花在写代码上,而是花在“为什么在我这里可以、到你那里就不行”这类环境问题上。
Docker 的思路并不复杂:把应用、运行库和配置一起封装进镜像,镜像再运行成容器。容器之间相互隔离,又比传统虚拟机轻量,启动通常只要几秒。对初学者来说,先不用纠结底层原理,能把镜像拉下来、把容器跑起来,就已经迈出了第一步。
二、安装 Docker
以 Ubuntu 为例,先更新软件源并准备好添加官方软件源所需的工具,再安装 Docker 引擎:
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
# 添加 Docker 官方 GPG 密钥与软件源后,再执行:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable --now docker
docker --version
最后一行能输出版本号,说明安装基本成功。如果使用 Windows 或 macOS,可以安装 Docker Desktop,图形界面里能直接看到容器、镜像和日志,对新手更友好。需要注意的是,Windows 上通常要先启用 WSL 2,第一次启动慢一点属于正常现象。
三、几条最常用的命令
日常使用其实来回就是几条命令,先混个脸熟即可:
docker pull nginx # 拉取镜像
docker images # 查看本地镜像
docker ps # 查看正在运行的容器
docker ps -a # 查看全部容器,包括已停止的
docker logs 容器名 # 查看日志
docker stop 容器名 # 停止容器
docker rm 容器名 # 删除容器
docker rmi 镜像名 # 删除镜像
我自己的记法是:镜像像“安装包”,容器像“正在运行的进程”。先有镜像,才能启动容器;容器停止后不会自动消失,所以练习多了记得用 docker ps -a 检查并清理不再需要的容器,避免磁盘被占满。
四、跑起第一个容器
先用官方的 hello-world 验证安装:
docker run hello-world
看到欢迎信息,就说明拉取、创建和运行这条链路是通的。接着再做一点更真实的事情,用 Nginx 起一个网页服务:
docker run -d --name my-nginx -p 8080:80 nginx
这里 -d 表示后台运行,–name 给容器起名字,-p 8080:80 是把本机的 8080 端口映射到容器内的 80 端口。命令执行后,在浏览器地址栏输入本机地址并加上 8080 端口,就能看到 Nginx 的欢迎页。想看它是否在运行,执行 docker ps;想停下来,执行 docker stop my-nginx。
五、小结
回顾一下今天的路径:安装 Docker、用 docker --version 验证、记住镜像和容器的区别、掌握 pull、ps、logs、stop 等常用命令,最后用 hello-world 和 Nginx 完成两次实际运行。对入门者来说,不必一开始就背下所有参数,先亲手跑通一次,理解“镜像—容器—端口映射”这条主线,后面学习 Dockerfile 和 Compose 才不会觉得抽象。下一步,我打算把自己的一个小项目写成 Dockerfile,真正把本地环境问题一次解决掉。
- 点赞
- 收藏
- 关注作者
评论(0)