当前位置: 首页 > news >正文

Docker 安装与配置 详解——AI教你学Docker

1.2 Docker 安装与配置 详解

本节围绕 Docker 的安装方法及常见配置,帮助你在不同平台上顺利部署 Docker,并理解其关键配置项。

一、Docker 安装

1. 支持的操作系统

  • Linux(主流发行版:Ubuntu、CentOS、Debian、Fedora、openSUSE 等)
  • Windows(Windows 10/11 Pro/Enterprise、Windows Server 2016 及以上)
  • macOS(Intel/Apple Silicon)

推荐使用官方脚本或包管理工具安装,避免使用第三方源。

2. Linux 平台安装步骤(以 Ubuntu 为例)

  1. 卸载旧版本(如果有)

    sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. 更新 apt 包索引并安装依赖

    sudo apt-get update
    sudo apt-get install ca-certificates curl gnupg lsb-release
    
  3. 添加 Docker 官方 GPG 密钥

    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    
  4. 设置 Docker 仓库

    echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.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-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
  6. 启动并设置开机自启

    sudo systemctl start docker
    sudo systemctl enable docker
    
  7. 验证安装

    docker version
    docker run hello-world
    
其他主流 Linux 发行版(CentOS、Fedora、Debian)安装方式类似,详见官方文档。

3. Windows 平台安装

  • Docker Desktop for Windows:适用于 Win10/11 Pro/Enterprise 或 Windows Server。
  • 下载安装包:Docker Desktop 官网
  • 安装完成后,建议在 WSL2(Windows 子系统 Linux 2)上运行 Docker,性能更佳。
注意事项:
  • Windows 需开启 Hyper-V 或 WSL2。
  • 家庭版用户建议升级至专业版或使用 Docker Toolbox(已不推荐)。

4. macOS 平台安装

  • Docker Desktop for Mac:适用于 Intel 和 Apple Silicon(M1/M2)芯片。
  • 下载安装包:Docker Desktop 官网
  • 支持通过 Homebrew 安装:
    brew install --cask docker
    
注意事项:
  • Docker Desktop 启动后会在菜单栏显示小鲸鱼图标。
  • 需赋予相关系统权限(磁盘、网络等)。

5. 免安装二进制方式

  • 适合服务器/云平台,直接下载官方发布的二进制包解压即可使用。

二、Docker 配置

1. Docker Daemon 配置文件(daemon.json)

  • 位置:/etc/docker/daemon.json(Linux),C:\ProgramData\docker\config\daemon.json(Windows)

  • 常见配置项示例:

    {"registry-mirrors": ["https://your-mirror.com"],"insecure-registries": ["http://your-registry:5000"],"log-driver": "json-file","log-opts": {"max-size": "100m","max-file": "3"},"data-root": "/data/docker"
    }
    
  • 说明:

    • registry-mirrors:镜像加速器,提升国内拉取镜像速度(如阿里云、网易云、DaoCloud等)。
    • insecure-registries:允许连接无需 HTTPS 的私有仓库。
    • log-driver:日志驱动,常见有 json-file、syslog、journald、none 等。
    • data-root:自定义 Docker 数据存储目录(默认 /var/lib/docker)。
    • log-opts:日志文件大小与轮转设置,防止日志占满磁盘。
修改后重启 Docker 服务:
sudo systemctl restart docker

2. 配置代理

  • 国内访问 Docker Hub 慢或公司需要代理时,可配置 HTTP/HTTPS 代理。
  • 创建 /etc/systemd/system/docker.service.d/http-proxy.conf 文件(Linux):
    [Service]
    Environment="HTTP_PROXY=http://proxy.example.com:8080"
    Environment="HTTPS_PROXY=http://proxy.example.com:8080"
    Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.somecorporation.com"
    
  • 重新加载 systemd 并重启 Docker:
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

3. 普通用户免 sudo 运行 Docker

  • 默认只有 root 或 docker 组成员能操作 Docker。
  • 添加当前用户到 docker 组:
    sudo usermod -aG docker $USER
    # 重新登录 shell 或 reboot 生效
    

4. 安装 Docker Compose(独立版本)

  • 新版 Docker Desktop 已自带 Compose 插件;Linux 可单独安装独立版本:
    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" \
    -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    docker-compose --version
    

三、常见问题与排查

  • 启动失败:检查端口冲突、磁盘空间、配置文件格式等。
  • 无法拉取镜像:尝试配置 registry-mirrors,检查网络代理设置。
  • docker 命令需 sudo:确认用户已加入 docker 组,重新登录。

四、参考链接

  • Docker 官方文档:安装
  • Docker 官方文档:配置

相关文章:

  • 网站建设服务商城湘潭seo快速排名
  • 网站建设注意上海seo推广公司
  • 镇江百度网站排名百度搜不干净的东西
  • 有本地服务器怎么做网站公司seo是什么级别
  • 武汉做旅游教育的公司网站淘宝关键词指数查询
  • 企云网站建设官方百度平台
  • 实物建模性能优化秘籍:如何将模型面数减少且保持质感
  • 实现OFD转换PDF文件的实用方法
  • 计算机基础和Java编程的练习题
  • (LeetCode 每日一题) 2200. 找出数组中的所有 K 近邻下标 (双指针)
  • CasaOS中Docker部署SyncThing结合Cpolar实现公网文件同步方案
  • Kafka 监控与调优实战指南(二)
  • 华为云Flexus+DeepSeek征文 | 华为云MaaS平台上的智能客服Agent开发:多渠道融合应用案例
  • 《高并发系统的一致性保障:RocketMQ事务消息实现原理与应用》
  • JAVA的springboot项目使用AliMQ示例
  • vftp centos 离线部署
  • 【深度学习】-学习篇(一)
  • 纪念抗战胜利知识答题pk小程序
  • 【JS-4.8-type属性】深入理解DOM操作中的type属性及其常见应用
  • Python爬虫结合API接口批量获取PDF文件
  • Dify全面升级:打造极致智能应用开发体验,携手奇墨科技共拓AI新生态
  • 鸿蒙应用开发中的状态管理:深入解析AppStorage与LocalStorage
  • log4cplus调用
  • 《仿盒马》app开发技术分享-- 兑换商品详情(69)
  • WPF中的MVVM设计模式
  • 解锁Selenium:Web自动化的常用操作秘籍