news 2026/5/7 14:22:06

第一部分-Docker基础入门——01. Docker 简介与安装

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第一部分-Docker基础入门——01. Docker 简介与安装

01. Docker 简介与安装

1. 什么是 Docker

Docker 是一个开源的容器化平台,它允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中,然后发布到任何支持 Docker 的系统上。

1.1 容器 vs 虚拟机

┌─────────────────────────────────────────────────────────────┐ │ 容器 vs 虚拟机 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 虚拟机架构 容器架构 │ │ ┌─────────────┐ ┌─────────────┐ │ │ │ App A │ App B │ App A │ App B │ │ ├─────────────┤ ├─────────────┤ │ │ │ Bins/Libs │ Bins/Libs │ Bins/Libs │ Bins/Libs │ │ ├─────────────┤ ├─────────────┤ │ │ │ Guest OS │ Guest OS │ │ │ │ ├─────────────┤ │ Docker │ │ │ │ Hypervisor │ │ Engine │ │ │ ├─────────────┤ ├─────────────┤ │ │ │ Host OS │ │ Host OS │ │ │ └─────────────┘ └─────────────┘ │ │ │ │ 特点: 特点: │ │ - 资源占用大 - 轻量级 │ │ - 启动慢(分钟级) - 启动快(秒级) │ │ - 完全隔离 - 进程级隔离 │ │ - 每个 VM 有独立 OS - 共享宿主机 OS │ │ │ └─────────────────────────────────────────────────────────────┘

1.2 Docker 的优势

优势说明
一致性开发、测试、生产环境一致
可移植性一次构建,到处运行
隔离性进程级资源隔离
轻量级共享宿主机内核
快速启动毫秒级启动时间
易于扩展轻松横向扩展

2. Docker 发展历史

时间里程碑
2013年Docker 项目开源
2014年Docker 1.0 发布
2015年成立 OCI(开放容器倡议)
2017年Moby 项目拆分
2020年Kubernetes 弃用 Dockershim
至今成为容器化标准

3. Docker 架构

┌─────────────────────────────────────────────────────────────┐ │ Docker 架构 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────┐ ┌─────────────────────────┐ │ │ │ Docker │ CLI │ Docker Daemon │ │ │ │ Client │ ──────→ │ (dockerd) │ │ │ └─────────┘ REST ├─────────────────────────┤ │ │ API │ ┌─────────┐ │ │ │ │ │ containerd │ │ │ │ ┌─────────┐ │ └────┬────┘ │ │ │ │ Docker │ │ │ │ │ │ │ Registry│ ←────── │ ┌────▼────┐ │ │ │ └─────────┘ │ │ runc │ │ │ │ │ └─────────┘ │ │ │ └─────────────────────────┘ │ │ │ │ 组件说明: │ │ - Docker Client:用户交互入口 │ │ - Docker Daemon:管理容器、镜像、网络 │ │ - containerd:容器运行时 │ │ - runc:容器创建和运行 │ │ - Registry:镜像仓库 │ └─────────────────────────────────────────────────────────────┘

4. Docker 安装

4.1 Linux 安装(Ubuntu/Debian)

# 1. 更新软件包索引sudoapt-getupdate# 2. 安装依赖包sudoapt-getinstall-y\ca-certificates\curl\gnupg\lsb-release# 3. 添加 Docker 官方 GPG 密钥sudomkdir-p/etc/apt/keyringscurl-fsSLhttps://download.docker.com/linux/ubuntu/gpg|sudogpg--dearmor-o/etc/apt/keyrings/docker.gpg# 4. 设置仓库echo\"deb [arch=$(dpkg --print-architecture)signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release-cs)stable"|sudotee/etc/apt/sources.list.d/docker.list>/dev/null# 5. 安装 Docker Enginesudoapt-getupdatesudoapt-getinstall-ydocker-ce docker-ce-cli containerd.io docker-compose-plugin# 6. 启动 Dockersudosystemctl startdockersudosystemctlenabledocker# 7. 验证安装sudodockerrun hello-world

4.2 Linux 安装(CentOS/RHEL)

# 1. 卸载旧版本sudoyum removedockerdocker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine# 2. 安装依赖sudoyuminstall-yyum-utils# 3. 添加仓库sudoyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 4. 安装 Dockersudoyuminstall-ydocker-ce docker-ce-cli containerd.io docker-compose-plugin# 5. 启动 Dockersudosystemctl startdockersudosystemctlenabledocker# 6. 验证sudodockerrun hello-world

4.3 macOS 安装

# 方法1:使用 Homebrewbrewinstalldockerdocker-compose# 方法2:下载 Docker Desktop# 访问 https://www.docker.com/products/docker-desktop/# 下载 .dmg 文件并安装# 验证安装docker--versiondocker-compose--version

4.4 Windows 安装

# 1. 启用 WSL 2# 以管理员身份运行 PowerShellwsl--install# 2. 下载 Docker Desktop for Windows# 访问 https://www.docker.com/products/docker-desktop/# 3. 安装并重启# 4. 验证docker--version

5. 配置镜像加速器

5.1 国内常用镜像源

镜像源地址
阿里云https://.mirror.aliyuncs.com
腾讯云https://mirror.ccs.tencentyun.com
中科大https://docker.mirrors.ustc.edu.cn
网易https://hub-mirror.c.163.com

5.2 配置镜像加速

# 创建配置目录sudomkdir-p/etc/docker# 编辑配置文件sudotee/etc/docker/daemon.json<<-'EOF' { "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com" ], "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } } EOF# 重启 Dockersudosystemctl daemon-reloadsudosystemctl restartdocker# 验证配置dockerinfo|grep-A5"Registry Mirrors"

6. 验证安装

6.1 基础验证命令

# 查看 Docker 版本docker--version# Docker version 24.0.7, build afdd53b# 查看详细版本信息dockerversion# 查看 Docker 系统信息dockerinfo# 运行测试容器dockerrun hello-world# 查看运行的容器dockerps# 查看所有容器dockerps-a# 查看镜像列表dockerimages

6.2 配置非 root 用户运行

# 创建 docker 用户组sudogroupadddocker# 将当前用户加入 docker 组sudousermod-aGdocker$USER# 重新登录或执行newgrpdocker# 验证dockerrun hello-world

7. 第一个容器

# 运行 Nginx 容器dockerrun-d-p8080:80--namemy-nginx nginx# 访问测试curlhttp://localhost:8080# 查看容器日志dockerlogs my-nginx# 进入容器dockerexec-itmy-nginxbash# 停止容器dockerstop my-nginx# 删除容器dockerrmmy-nginx

8. 常用命令速查

命令说明
docker --version查看版本
docker info系统信息
docker run运行容器
docker ps查看运行容器
docker ps -a查看所有容器
docker images查看镜像
docker pull拉取镜像
docker rmi删除镜像
docker rm删除容器
docker stop/start停止/启动容器
docker logs查看日志
docker exec进入容器

9. 常见问题

Q1: 权限不足(Permission denied)

# 方法1:使用 sudosudodockerrun hello-world# 方法2:将用户加入 docker 组sudousermod-aGdocker$USERnewgrpdocker

Q2: 镜像拉取超时

# 配置镜像加速器后重试# 或使用代理exportHTTP_PROXY=http://proxy-url:portexportHTTPS_PROXY=http://proxy-url:port

Q3: 端口已被占用

# 查看端口占用sudolsof-i:8080# 更换端口映射dockerrun-d-p8081:80 nginx

10. 小结

  • Docker是轻量级容器化平台
  • 容器比虚拟机更轻量、启动更快
  • 支持主流操作系统安装
  • 配置镜像加速器提升拉取速度
  • 掌握基础命令即可开始使用

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/7 14:16:31

漫画日语文字识别终极方案:Manga OCR完整指南

漫画日语文字识别终极方案&#xff1a;Manga OCR完整指南 【免费下载链接】manga-ocr Optical character recognition for Japanese text, with the main focus being Japanese manga 项目地址: https://gitcode.com/gh_mirrors/ma/manga-ocr Manga OCR是一款专门针对日…

作者头像 李华