← 全部文章
Docker命令行入门

Docker 系列(二):安装并运行第一个容器

2026年7月27日 · 13 分钟

先把 Docker 装上

Windows / macOS

最简单的方式是安装 Docker Desktop:去官网 docker.com 下载安装包,一路下一步即可。它内置了 Docker Engine、CLI、Compose 和一个图形界面。

Windows 用户注意:需要开启 WSL 2(Windows Subsystem for Linux),Docker Desktop 安装时会引导你完成。

Linux(以 Ubuntu 为例)

Linux 用官方脚本一键安装最省心:

# 官方便捷安装脚本
curl -fsSL https://get.docker.com | sh

# 把当前用户加入 docker 组,之后不用每次都 sudo(需重新登录生效)
sudo usermod -aG docker $USER

# 设置开机自启
sudo systemctl enable --now docker

验证安装

装完后,用这两条命令确认一切正常:

docker version   # 查看客户端和服务端版本
docker info      # 查看运行状态、容器/镜像数量等详细信息

你的第一个容器:hello-world

docker run hello-world

如果看到 "Hello from Docker!" 的输出,恭喜,你的 Docker 已经能正常工作了。这条命令 背后:本地没有 hello-world 镜像 → 自动从 Docker Hub 拉取 → 创建容器并运行 → 打印 信息后退出。

核心命令:docker run 逐参数拆解

docker run 是使用频率最高的命令,把常用参数吃透,你就掌握了一大半:

docker run -d -p 8080:80 --name web nginx
参数含义
-ddetached,后台运行,不占用当前终端
-p 8080:80端口映射,宿主机 8080 → 容器 80(格式:宿主:容器)
--name web给容器起个名字,方便后续引用(否则随机生成)
nginx使用的镜像名

其他高频参数:

参数含义
-it交互式终端(-i 保持输入 + -t 分配伪终端),常用于进入容器
--rm容器停止后自动删除,适合临时测试,不留垃圾
-e KEY=VALUE设置环境变量
-v 宿主路径:容器路径挂载数据卷(第五篇详讲)
--restart unless-stopped容器异常退出时自动重启

举个交互式的例子——启动一个 Ubuntu 容器并进入它的命令行:

docker run -it --rm ubuntu bash
# 现在你就"进入"了容器内部,可以敲 Linux 命令
# 输入 exit 退出,因为加了 --rm,容器会自动删除

日常管理命令

查看容器

docker ps          # 查看正在运行的容器
docker ps -a       # 查看所有容器(包括已停止的)

输出里最重要的几列:CONTAINER ID(容器 ID)、IMAGE(镜像)、STATUS(状态)、 PORTS(端口)、NAMES(名字)。

查看日志

docker logs web         # 查看名为 web 的容器日志
docker logs -f web      # -f 持续跟踪(类似 tail -f)
docker logs --tail 100 web   # 只看最后 100 行

排查容器为什么起不来、程序报什么错,第一反应就是看 docker logs

进入运行中的容器

docker exec -it web bash    # 在 web 容器里开一个 bash
# 有些精简镜像没有 bash,用 sh:
docker exec -it web sh

exec 是进入已在运行的容器;注意别和 run(新建容器)搞混。

停止、启动、删除

docker stop web      # 优雅停止
docker start web     # 重新启动已停止的容器
docker restart web   # 重启
docker rm web        # 删除容器(需先停止,或加 -f 强制删除)
docker rm -f web     # 强制删除(运行中也能删)

清理

docker container prune   # 删除所有已停止的容器
docker system prune      # 清理所有未使用的容器、网络、悬空镜像
docker system prune -a   # 更狠,连未使用的镜像也删(慎用)

一个完整练习

把学到的串起来,跑一个真实网站:

# 1. 后台启动 nginx,映射端口,命名
docker run -d -p 8080:80 --name mysite nginx

# 2. 确认它在跑
docker ps

# 3. 浏览器访问 http://localhost:8080 看到欢迎页

# 4. 进容器看看内部
docker exec -it mysite sh
#   在容器里:ls /usr/share/nginx/html  然后 exit

# 5. 看日志(刷新几次网页后)
docker logs mysite

# 6. 玩完收工,强制删除
docker rm -f mysite

本篇小结

  • 三大平台安装方式:桌面端用 Docker Desktop,Linux 用官方脚本。
  • docker run 的核心参数:-d-p--name-it--rm-e
  • 日常四件套:ps 看状态、logs 看日志、exec 进容器、rm 删容器。
  • 定期 prune 清理,别让废弃容器和镜像占满磁盘。

下一篇深入原理:镜像为什么是「分层」的?这套设计如何让 Docker 又快又省空间。

相关水晶