Docker 入门:三步跑起你的第一个容器
如果你写过代码,一定听过这句经典甩锅:“在我机器上明明能跑!”环境不一致,是开发和运维之间永恒的战争。而 Docker 的出现,就是为了终结这场战争。今天这篇文章,带你用三步跑起人生中第一个容器。
一、Docker 到底是什么
简单说,Docker 是一个容器引擎。它把应用和它依赖的一切(代码、运行时、系统工具、配置)打包成一个标准化的“镜像”,走到哪里都能原样运行。
容器和虚拟机很像,但轻得多:虚拟机要虚拟整套硬件和操作系统,而容器直接复用宿主机的操作系统内核,启动只需几百毫秒,占用资源也小得多。正因为轻量,Docker 成了微服务和云原生时代的标配。
二、第一步:安装并验证
以 Ubuntu 为例,安装非常简单:
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
验证安装是否成功:
docker version
docker run hello-world
如果看到“Hello from Docker!”,恭喜,Docker 已经在你的机器上跑起来了。
小提示:默认使用 docker 需要 root 权限,可以执行 sudo usermod -aG docker $USER 把自己加入 docker 组,重新登录后就不用每次都加 sudo 了。
三、第二步:跑起第一个真正的容器
来点实在的——用一行命令启动一个 Nginx 网页服务器:
docker run -d -p 8080:80 --name my-nginx nginx
拆解一下参数:
-d:后台运行,不占用你的终端;
-p 8080:80:把容器的 80 端口映射到本机的 8080 端口;
--name my-nginx:给容器起个名字,方便管理;
nginx:要使用的镜像名,Docker 会自动从镜像仓库拉取。
现在打开浏览器访问 http://localhost:8080,你应该能看到 Nginx 的欢迎页面——一个完整的 Web 服务器,就这样跑起来了。
几个配套的常用命令:
docker ps:查看正在运行的容器;
docker stop my-nginx / docker start my-nginx:停止 / 启动容器;
docker rm my-nginx:删除容器。
四、第三步:理解镜像与容器
这是 Docker 最核心的一对概念:
镜像(Image):只读的模板,好比软件的安装包;
容器(Container):镜像的运行实例,好比安装好正在运行的软件。
一个镜像可以启动出无数个容器,容器之间互不干扰。你也可以把自己的改动保存成新镜像,或者写一个 Dockerfile 来自动化构建镜像。
五、新手避坑指南
1. 端口冲突:如果 8080 已经被占用,换一个即可,比如 -p 8081:80。
2. 数据丢失:容器删掉,里面的数据就没了。重要数据要用 -v 把目录挂载到宿主机上做持久化。
3. 镜像拉取太慢:配置国内镜像加速器,拉取速度能快一个数量级。
写在最后
Docker 的学习曲线其实很平缓:从 docker run 开始,慢慢接触 Dockerfile、docker-compose,再到 Kubernetes,一步一个脚印。今天这三步,就是你容器化之旅的起点——现在就去跑起你的第一个容器吧!
- 点赞
- 收藏
- 关注作者
评论(0)