欢迎光临
我们一直在努力

Docker 完整安装 + 基础使用教程

一、Docker 介绍

Docker 是容器化工具,把应用、依赖、环境打包成镜像,一次打包到处运行,隔离环境、部署简单。 分为三部分:

  • Docker Engine:核心引擎(服务端)
  • Docker CLI:命令行客户端
  • Docker Compose:多容器编排工具(推荐一并安装)
  • 二、各系统安装 Docker

    1. Ubuntu / Debian(Linux 主流)

    1)卸载旧版本

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

    2)安装依赖

    sudo apt update
    sudo apt install 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)添加软件源

    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 + Compose

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

    6)免 sudo 运行 docker(必做)

    sudo usermod -aG docker $USER
    # 生效:重新登录服务器/终端
    newgrp docker

    7)验证安装

    docker -v
    docker compose version
    # 测试运行容器
    docker run hello-world

    2. CentOS / Rocky Linux / RHEL

    # 卸载旧版
    yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
    # 安装源工具
    yum install -y yum-utils
    # 添加docker源
    yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo
    # 安装
    yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
    # 启动开机自启
    systemctl start docker
    systemctl enable docker
    # 免sudo
    usermod -aG docker $USER
    newgrp docker
    # 验证
    docker run hello-world

    3. Windows 系统(Win10/11 专业版 / 家庭版)

    方案:Docker Desktop(图形化,自带 compose)

  • 开启 WSL2 虚拟机 设置 → 应用 → 可选功能 → 勾选「适用于 Linux 的 Windows 子系统」「虚拟机平台」,重启电脑
  • 安装 WSL2 默认内核
  • wsl –install

  • 官网下载 Docker Desktop https://www.docker.com/products/docker-desktop/
  • 安装后打开,终端直接使用 docker、docker compose
  • 4. MacOS

  • 官网下载 Docker Desktop(Intel/M1/M2 区分版本)
  • 拖拽安装,启动后终端直接执行 docker 命令
  • 三、Docker 核心基础概念

  • 镜像 (image):只读模板,打包好的环境(如 nginx、mysql)
  • 容器 (container):镜像运行后的实例,独立运行程序
  • 仓库 (hub):存放镜像,默认 Docker Hub
  • Dockerfile:自定义镜像的构建脚本
  • Volume:数据卷,持久化容器数据(容器删除数据不丢)
  • 四、Docker 高频常用命令

    1. 镜像操作

    # 拉取镜像
    docker pull nginx
    # 查看本地镜像
    docker images
    # 删除镜像
    docker rmi 镜像ID/镜像名
    # 搜索镜像
    docker search mysql
    # 导出镜像
    docker save -o nginx.tar nginx
    # 导入镜像
    docker load -i nginx.tar

    2. 容器运行(重点)

    # 最简运行nginx
    docker run nginx

    # 常用完整参数示例(端口映射+后台运行+命名+数据卷)
    # -d 后台运行
    # –name 容器名
    # -p 主机端口:容器端口 端口映射
    # -v 主机目录:容器目录 数据持久化
    # –restart always 开机自启
    docker run -d –name mynginx -p 8080:80 -v /data/nginx/html:/usr/share/nginx/html –restart always nginx

    3. 容器管理

    # 查看运行中容器
    docker ps
    # 查看所有容器(含停止)
    docker ps -a
    # 停止容器
    docker stop 容器名/ID
    # 重启容器
    docker restart 容器名/ID
    # 删除停止的容器
    docker rm 容器名/ID
    # 进入容器终端
    docker exec -it mynginx /bin/bash
    # 查看容器日志
    docker logs mynginx
    # 实时日志
    docker logs -f mynginx

    4. 数据卷 Volume

    # 创建数据卷
    docker volume create mysql-data
    # 挂载运行
    docker run -d -v mysql-data:/var/lib/mysql mysql
    # 查看所有卷
    docker volume ls
    # 删除无用卷
    docker volume prune

    5. 镜像构建 Dockerfile

  • 新建 Dockerfile 文件
  • FROM nginx
    COPY index.html /usr/share/nginx/html/

  • 构建自定义镜像
  • docker build -t my-nginx:v1 .

  • 运行自定义镜像
  • docker run -d -p 80:80 my-nginx:v1

    五、Docker Compose 多容器编排(开发 / 部署必备)

    适合同时启动 mysql + redis + nginx + 项目等多个容器

    1. 编写 docker-compose.yml

    示例:nginx + mysql

    version: "3.8"
    services:
    nginx:
    image: nginx
    ports:
    – "8080:80"
    volumes:
    – ./html:/usr/share/nginx/html
    restart: always
    mysql:
    image: mysql:8.0
    environment:
    MYSQL_ROOT_PASSWORD: 123456
    MYSQL_DATABASE: testdb
    volumes:
    – mysql-data:/var/lib/mysql
    ports:
    – "3306:3306"
    volumes:
    mysql-data:

    2. Compose 命令

    # 后台启动所有服务
    docker compose up -d
    # 查看运行容器
    docker compose ps
    # 查看日志
    docker compose logs -f
    # 停止服务(不删除容器数据)
    docker compose stop
    # 停止并删除容器(数据卷保留)
    docker compose down
    # 删除容器+数据卷
    docker compose down -v
    # 重启单个服务
    docker compose restart mysql

    六、Docker 服务管理(Linux)

    # 启动docker服务
    systemctl start docker
    # 停止
    systemctl stop docker
    # 开机自启
    systemctl enable docker
    # 查看状态
    systemctl status docker
    # 重启docker
    systemctl restart docker

    七、常见问题

  • docker 命令提示 permission denied 解决:执行 sudo usermod -aG docker $USER 后重新登录终端
  • 端口占用 修改 -p 主机端口:容器端口 的主机端口,如 8081:80
  • 容器重启数据丢失 必须使用 -v 挂载数据卷持久化
  • 国内拉取镜像慢 配置镜像加速器(阿里云 / 网易镜像源)
  • 赞(0)
    未经允许不得转载:171主机测评 » Docker 完整安装 + 基础使用教程
    分享到: 更多 (0)

    评论 抢沙发

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