欢迎光临
我们一直在努力

Docker 新手小白保姆级教程:从安装到基础操作全搞定

作为一名刚接触容器技术的新手,是不是觉得 Docker 又神秘又难学?其实 Docker 的核心逻辑很简单 ——“一次构建,到处运行”,能帮我们解决环境配置不一致、依赖冲突等一系列头疼问题。今天这篇教程,就从各系统安装 Docker讲到镜像 / 容器核心操作,全程步骤清晰、命令可直接复制,新手也能快速上手!

一、为什么要学 Docker?

在学之前先搞懂:Docker 到底能帮我们做什么?

  • 环境统一:开发、测试、生产环境完全一致,再也不用喊 “我本地能跑啊”;
  • 轻量级:容器比虚拟机占用资源少,启动快(秒级启动);
  • 隔离性:每个容器独立运行,互不干扰,避免依赖冲突;
  • 易部署:无需手动配置复杂依赖,拉取镜像就能启动服务。

接下来,咱们一步步从安装开始入手~

二、各系统 Docker 安装步骤(Windows/macOS/Linux)

Docker 分为「Docker Engine」(核心运行环境)和「Docker Desktop」(图形化界面,可选),新手建议安装 Docker Desktop,操作更直观。

1. Windows 系统(重点区分家庭版 / 专业版)

前置条件:
  • Windows 10 专业版 / 企业版 / 教育版:需开启「Hyper-V」和「容器」功能;
  • Windows 10 家庭版:需先安装「WSL2」(Windows 子系统),再安装 Docker Desktop。
安装步骤:
  • 开启必要功能(家庭版跳过这步,直接装 WSL2):

    • 按下 Win+R,输入 control 打开控制面板 → 程序 → 启用或关闭 Windows 功能;
    • 勾选「Hyper-V」「容器」「Windows 虚拟机监控程序平台」,点击确定,重启电脑。
  • 安装 WSL2(仅家庭版需要):

    • 以管理员身份打开命令提示符(CMD),输入以下命令: wsl –install
    • 等待安装完成后,重启电脑。
  • 下载并安装 Docker Desktop:

    • 官网下载:Docker Desktop for Windows(需注册 Docker 账号,免费);
    • 双击安装包,默认下一步即可(勾选 “Use WSL 2 instead of Hyper-V”);
    • 安装完成后,桌面会出现 Docker 图标,启动后任务栏显示鲸鱼图标(绿色表示运行正常)。
  • 验证安装:

    • 打开 CMD 或 PowerShell,输入以下命令,显示版本则成功: docker –version
      docker run hello-world # 运行测试镜像,验证是否正常工作
  • 2. macOS 系统(区分 Intel/M1 芯片)

    前置条件:
    • macOS 10.15+(Catalina)及以上版本;
    • M1/M2 芯片需下载专门的 ARM 架构版本。
    安装步骤:
  • 下载 Docker Desktop:

    • 官网下载:Docker Desktop for Mac;
    • 自动识别芯片架构(Intel/M1),直接下载对应安装包。
  • 安装与启动:

    • 双击.dmg 安装包,将 Docker 拖入应用程序文件夹;
    • 从启动台打开 Docker,首次启动会提示输入系统密码(授权权限);
    • 任务栏出现鲸鱼图标,绿色表示运行正常。
  • 验证安装:

    • 打开终端(Terminal),输入以下命令: docker –version
      docker run hello-world # 测试镜像运行成功则安装完成
  • 3. Linux 系统(Ubuntu/Debian/Jetson ARM 架构)

    Linux 系统推荐直接安装 Docker Engine(无图形化界面,纯命令行),以下是最常用的 Ubuntu/Debian 系列安装步骤,Jetson Orin/Nano 等 ARM 架构同样适用,下面提供二种安装方法,第一种方法指令比较少的核心原因是官方一键脚本封装了所有手动步骤,自动化执行;第二种方是手动拆解每一步,适合学习和自定义配置。

    第一种方法:安装步骤(一键脚本安装):

    步骤 1:安装 curl 工具

    Ubuntu 系统推荐使用 apt 安装 curl(比 snap 更稳定,适配系统环境):

    # 更新软件包索引(可选,但建议执行)
    sudo apt update

    # 安装 curl
    sudo apt install curl -y

    步骤 2:下载 Docker 安装脚本

    安装完 curl 后,重新执行下载命令:

    curl -fsSL https://get.docker.com -o install-docker.sh

    • -fsSL 参数说明:
      • f:失败时不输出错误信息
      • s:静默模式,不显示进度条
      • S:如果失败,显示错误信息
      • L:跟随重定向(确保下载到正确的脚本)
    步骤 3:执行 Docker 安装脚本

    # 运行安装脚本(需要 root 权限)
    sudo sh install-docker.sh

    这个脚本会自动:

  • 卸载系统中旧的 Docker 版本(如 docker、docker-engine 等)
  • 设置 Docker 官方软件源
  • 安装 Docker Engine、Containerd、Docker Compose
  • 步骤 4:验证 Docker 是否安装成功

    # 查看 Docker 版本
    docker –version

    # 启动 Docker 服务(如果未自动启动)
    sudo systemctl start docker

    # 设置 Docker 开机自启
    sudo systemctl enable docker

    如果能看到 Docker 版本的输出,说明安装成功。

    第二种方法:安装步骤(手动分步安装):

  • 卸载旧版本(如果之前装过):

    sudo apt-get remove docker docker-engine docker.io containerd runc

  • 安装依赖包:

    sudo apt-get update
    sudo apt-get install ca-certificates curl gnupg lsb-release

  • 添加 Docker 官方 GPG 密钥:

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

  • 设置 Docker 软件源(区分 x86/ARM 架构):

    • x86 架构(普通电脑): 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
    • ARM 架构(Jetson Orin/Nano): echo "deb [arch=arm64 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
  • 安装 Docker Engine:

    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

  • 配置非 root 用户权限(避免每次都输 sudo):

    sudo usermod -aG docker $USER # 将当前用户加入docker组
    newgrp docker # 立即生效

  • 验证安装:

    docker –version
    docker run hello-world # 运行测试镜像,无报错则成功

  • 三、Docker 核心基础操作(镜像 + 容器)

    Docker 的核心概念:镜像(Image) 是容器的 “模板”(类似 ISO 镜像),容器(Container) 是镜像的 “运行实例”(类似虚拟机)。所有操作围绕这两个核心展开~

    1. 镜像操作(搜索 / 下载 / 查看 / 删除)

    (1)搜索镜像(从 Docker Hub 查找)

    Docker Hub 是官方镜像仓库,包含海量免费镜像(如 Ubuntu、Nginx、Python 等),命令格式:docker search 镜像名

    docker search ubuntu # 搜索Ubuntu镜像
    docker search nginx # 搜索Nginx镜像

    输出结果中,STARS 越多表示镜像越受欢迎,优先选官方镜像(OFFICIAL 列标为 OK)。

    (2)下载镜像(拉取镜像)

    命令格式:docker pull 镜像名:标签(标签即版本,默认 latest 最新版)

    docker pull ubuntu:22.04 # 下载Ubuntu 22.04版本
    docker pull nginx # 下载Nginx最新版(默认:latest)
    docker pull python:3.9 # 下载Python 3.9版本

    (3)查看本地已下载的镜像

    docker images # 查看所有本地镜像
    docker image ls # 与上一条命令等价,更简洁

    输出字段说明:

    • REPOSITORY:镜像名称;
    • TAG:版本标签;
    • IMAGE ID:镜像唯一 ID;
    • CREATED:创建时间;
    • SIZE:镜像大小。
    (4)删除本地镜像

    注意:删除镜像前,需先删除依赖该镜像的所有容器(否则报错)命令格式:docker rmi 镜像名:标签 或 docker rmi 镜像ID

    docker rmi ubuntu:22.04 # 通过“名称:标签”删除
    docker rmi 14c2d7905e84 # 通过镜像ID删除(ID只需输入前几位即可)
    docker rmi -f nginx # 强制删除(如果镜像被容器占用,加-f强制删除)

    2. 容器操作(创建 / 运行 / 查看 / 停止 / 删除)

    (1)创建并运行容器

    命令格式:docker run [参数] 镜像名 [命令]核心参数说明:

    • -it:交互式运行(可进入容器终端);
    • -d:后台运行(守护进程模式,不占用终端);
    • –name:给容器起一个自定义名称;
    • -p 主机端口:容器端口:端口映射(如将主机 8080 端口映射到容器 80 端口);
    • –rm:容器停止后自动删除(适合临时测试)。

    常用示例:

    # 1. 交互式运行Ubuntu容器(进入容器终端)
    docker run -it –name my-ubuntu ubuntu:22.04 /bin/bash
    # 进入后可执行Linux命令(如ls、pwd),退出容器输入exit

    # 2. 后台运行Nginx容器(端口映射8080->80)
    docker run -d –name my-nginx -p 8080:80 nginx
    # 运行后,访问http://localhost:8080即可看到Nginx默认页面

    # 3. 临时运行Python容器(停止后自动删除)
    docker run –rm -it python:3.9 python –version # 执行python版本命令后自动删除

    (2)查看容器状态

    docker ps # 查看正在运行的容器(最常用)
    docker ps -a # 查看所有容器(运行中+已停止)
    docker ps -q # 只查看运行中容器的ID(用于批量操作)

    输出字段说明:

    • CONTAINER ID:容器唯一 ID;
    • NAMES:容器名称(自定义或自动生成);
    • IMAGE:容器对应的镜像;
    • STATUS:状态(up 运行中 /exited 已停止);
    • PORTS:端口映射关系;
    • CREATED:创建时间。
    (3)停止运行中的容器

    docker stop 容器名 # 通过容器名称停止
    docker stop 容器ID # 通过容器ID停止
    docker stop $(docker ps -q) # 停止所有正在运行的容器(批量操作)

    (4)启动已停止的容器

    docker start 容器名/容器ID
    docker start my-ubuntu # 启动名为my-ubuntu的容器

    (5)进入正在运行的容器(交互式终端)

    适合容器后台运行时,需要进入终端操作的场景:

    docker exec -it 容器名/容器ID /bin/bash
    # 示例:进入后台运行的my-nginx容器
    docker exec -it my-nginx /bin/bash

    (6)查看容器日志(后台运行容器常用)

    docker logs 容器名/容器ID # 查看容器日志
    docker logs -f my-nginx # 实时查看日志(类似tail -f)

    (7)删除容器

    注意:删除容器前,需先停止容器(否则报错)

    docker rm 容器名/容器ID # 删除已停止的容器
    docker rm -f 容器名/容器ID # 强制删除(无论容器是否运行)
    docker rm -f $(docker ps -a -q) # 批量删除所有容器(谨慎使用!)

    四、Docker 基础操作汇总表格

    操作类型命令说明示例
    镜像搜索 docker search 镜像名 从 Docker Hub 搜索镜像 docker search nginx
    镜像下载 docker pull 镜像名:标签 拉取镜像(标签默认 latest) docker pull ubuntu:22.04
    镜像查看 docker images / docker image ls 查看本地所有镜像 docker images
    镜像删除 docker rmi 镜像名:标签/ID 删除本地镜像(需先删依赖容器) docker rmi nginx / docker rmi 14c2d79
    容器创建运行 docker run [参数] 镜像名 创建并运行容器(-it 交互 /-d 后台) docker run -d –name my-nginx -p 8080:80 nginx
    容器查看 docker ps 查看正在运行的容器 docker ps
    容器查看(所有) docker ps -a 查看所有容器(运行中 + 已停止) docker ps -a
    容器停止 docker stop 容器名/ID 停止运行中的容器 docker stop my-nginx
    容器启动 docker start 容器名/ID 启动已停止的容器 docker start my-nginx
    进入容器 docker exec -it 容器名/ID /bin/bash 进入运行中容器的终端 docker exec -it my-nginx /bin/bash
    容器日志 docker logs 容器名/ID 查看容器日志(-f 实时查看) docker logs -f my-nginx
    容器删除 docker rm 容器名/ID 删除已停止的容器(-f 强制删除) docker rm my-nginx / docker rm -f my-nginx

    五、新手入门小贴士

  • 遇到下载镜像慢?可以配置国内镜像源(如阿里云、网易云),在 Docker Desktop 的「Settings」→「Docker Engine」中添加:

    json

    "registry-mirrors": [
    "https://registry.docker-cn.com",
    "https://hub-mirror.c.163.com",
    "https://mirror.aliyuncs.com"
    ]

    配置后点击「Apply & Restart」重启 Docker 即可生效。

  • 忘记命令怎么办?用 docker 命令 –help 查看帮助文档,例如:

    docker run –help # 查看run命令的所有参数
    docker images –help # 查看images命令的帮助

  • 新手推荐练手镜像:ubuntu(熟悉 Linux 命令)、nginx(测试端口映射)、python(运行简单脚本),多动手尝试才能快速掌握。

  • 核心原则:镜像只读,容器可写—— 容器是镜像的运行实例,修改容器内的文件不会影响镜像本身(如需保存修改,需使用docker commit生成新镜像)。

  • Docker 的基础操作就这么多!新手先把这些命令练熟,就能应对大部分开发场景了。后续可以再学习 Docker Compose(多容器编排)、镜像构建(Dockerfile)等进阶内容。如果遇到问题,欢迎在评论区留言交流~

    赞(0)
    未经允许不得转载:171主机测评 » Docker 新手小白保姆级教程:从安装到基础操作全搞定
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址