本文适用于 Linux(以 Ubuntu/CentOS 为主)、macOS 和 Windows 用户,涵盖 Docker 的安装步骤与最常用的命令,助你快速上手容器化开发!
一、什么是 Docker?
Docker 是一个开源的容器化平台,允许开发者将应用及其依赖打包到轻量、可移植的容器中,实现“一次构建,随处运行”。与传统虚拟机相比,Docker 容器启动更快、资源占用更少。
二、Docker 安装
2.1 Ubuntu / Debian 安装
# 1. 更新包索引
sudo apt update
# 2. 安装必要依赖
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
# 3. 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 4. 添加 Docker 仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 5. 安装 Docker Engine
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
# 6. 验证安装
sudo docker --version免 sudo 使用 Docker(可选)
将当前用户加入 docker 用户组:sudo usermod -aG docker $USER # 重新登录终端生效
2.2 CentOS / RHEL 安装
# 1. 安装必要工具
sudo yum install -y yum-utils
# 2. 添加 Docker 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 3. 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 4. 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 5. 验证
docker --version2.3 macOS 安装
下载
.dmg文件并安装启动 Docker Desktop(首次启动需登录或注册账号)
终端中执行
docker --version验证
💡 注意:macOS 上 Docker 实际运行在轻量级 Linux 虚拟机中(由 HyperKit 驱动)
2.4 Windows 安装
Windows 10/11 Pro/Enterprise:推荐使用 Docker Desktop(需启用 WSL2 或 Hyper-V)
家庭版:需先安装 WSL2,再安装 Docker Desktop
安装步骤:
安装并重启
启动后在 PowerShell 中执行
docker --version
三、Docker 常用命令速查
🐳 镜像(Image)管理
🚢 容器(Container)操作
🔍 查看日志与进入容器
# 查看容器日志
docker logs <container>
# 实时跟踪日志
docker logs -f <container>
# 进入正在运行的容器(交互式)
docker exec -it <container> /bin/bash
# 退出容器但不终止:Ctrl+P+Q
📦 数据卷(Volume)管理
# 创建数据卷
docker volume create my-vol
# 查看数据卷
docker volume ls
# 挂载卷到容器
docker run -d -v my-vol:/app/data nginx
# 删除无用卷
docker volume prune🌐 网络(Network)管理
# 查看网络
docker network ls
# 创建自定义网络
docker network create my-net
# 容器加入网络
docker run -d --network my-net --name web nginx🧹 清理命令(慎用!)
# 删除所有停止的容器、所有未使用的网络、所有悬空镜像
docker system prune
# 更彻底:加上 -a 会删除所有未使用的镜像(不仅是悬空的)
docker system prune -a四、一个完整示例:运行 Nginx
# 拉取 Nginx 镜像
docker pull nginx
# 启动容器,映射 8080 端口到主机
docker run -d -p 8080:80 --name my-web nginx
# 浏览器访问 http://localhost:8080
# 查看日志
docker logs my-web
# 停止并删除
docker stop my-web
docker rm my-web五、常见问题
Q1:Permission denied while trying to connect to the Docker daemon socket
解决:将用户加入
docker用户组(见 Ubuntu 安装部分),或使用sudo。
Q2:Docker 启动很慢?
检查是否配置了国内镜像加速器(如阿里云、腾讯云)。
以 Ubuntu 为例,创建/etc/docker/daemon.json:{ "registry-mirrors": ["https://<your-mirror>.mirror.aliyuncs.com"] }然后重启 Docker:
sudo systemctl restart docker
六、结语
Docker 极大地简化了应用部署与环境隔离。掌握上述安装与常用命令,你已经迈出了容器化开发的第一步!建议接下来学习 Dockerfile 编写、docker-compose 编排等进阶内容。