news 2026/6/10 19:38:13

Docker 基础篇

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker 基础篇

下面是一份**「Docker 基础篇」系统入门教程,适合初学者 / 运维 / 后端 / 毕设环境部署**,从概念到实操,一篇就能上手。


Docker 基础篇(从 0 到会用)

一、Docker 是什么?

Docker是一种容器化技术,可以把应用程序 + 运行环境 + 依赖一次性打包成一个容器(Container),做到:

一次构建,到处运行

解决了什么问题?

  • 环境不一致(“我电脑能跑,你电脑跑不了”)
  • 部署复杂、配置繁琐
  • 应用迁移成本高

二、Docker 的核心概念

1️⃣ 镜像(Image)

  • 相当于程序安装包
  • 只读模板
  • 用于创建容器

👉 类比:操作系统 ISO / 软件安装包


2️⃣ 容器(Container)

  • 镜像的运行实例
  • 轻量级、可启动/停止
  • 相互隔离

👉 类比:正在运行的软件


3️⃣ 仓库(Registry)

  • 存放镜像的地方

  • 常见:

    • Docker Hub(官方)
    • 阿里云镜像仓库

三、Docker 的工作原理(简化)

Dockerfile → Image → Container
  • Dockerfile:构建规则
  • Image:构建结果
  • Container:运行实例

四、Docker 安装(常见环境)

Linux(CentOS / Ubuntu)

# 安装curl-fsSLhttps://get.docker.com|bash# 启动systemctl startdocker# 开机自启systemctlenabledocker# 查看版本docker-v

Windows / macOS

  • 安装Docker Desktop
  • 官方地址:https://www.docker.com/products/docker-desktop

五、Docker 常用命令(必会)

1️⃣ 镜像相关

dockerimages# 查看镜像dockerpull nginx# 拉取镜像dockerrmi 镜像ID# 删除镜像

2️⃣ 容器相关

dockerps# 查看运行中容器dockerps-a# 查看所有容器dockerrun nginx# 启动容器dockerstop 容器ID# 停止容器dockerrm容器ID# 删除容器

3️⃣ 常用 run 参数(重点)

dockerrun-d\-p80:80\--namemynginx\nginx
参数说明
-d后台运行
-p端口映射
--name容器名称

六、数据卷(Volume)

为什么需要数据卷?

容器删除后:
❌ 数据丢失

解决方案:数据持久化

dockerrun-d\-v/data/nginx:/usr/share/nginx/html\nginx

👉宿主机目录 ↔ 容器目录


七、Dockerfile 基础

示例:构建一个 Java 项目镜像

FROM openjdk:8 COPY app.jar /app.jar CMD ["java", "-jar", "/app.jar"]

构建并运行

dockerbuild-tmyapp.dockerrun-d-p8080:8080 myapp

八、Docker 网络(入门)

  • 默认 bridge 网络
  • 容器之间可通过容器名通信
dockernetworklsdockernetwork create mynetdockerrun--networkmynet...

九、Docker vs 虚拟机

对比Docker虚拟机
启动速度秒级分钟级
资源占用
隔离性进程级系统级
适合场景微服务完整系统

十、Docker 适用场景

✅ 微服务部署
✅ 项目快速搭建环境
✅ CI/CD 持续集成
✅ 毕设 / 实验环境统一
✅ 本地开发环境隔离


十一、新手常见坑

❌ 端口没映射,访问不了
❌ 容器一启动就退出(CMD 写错)
❌ 镜像太大(未清理依赖)
❌ 数据未持久化


十二、学习路线推荐

1️⃣ 会用docker run
2️⃣ 理解 Image / Container
3️⃣ 掌握 Dockerfile
4️⃣ 学会 Volume / Network
5️⃣ 入门 Docker Compose(进阶)


如果你需要👇

  • Docker 命令速查表(PDF)
  • Docker + Spring Boot / Python / Node 示例
  • Docker Compose 入门篇
  • 毕设 / 项目部署完整流程

直接告诉我你的使用场景,我可以按你需求给你定制教程 🚀

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

YOLOv8代码覆盖率分析:提升测试完整性

YOLOv8代码覆盖率分析:提升测试完整性 在现代AI系统开发中,模型性能的提升往往伴随着工程复杂性的激增。以YOLOv8为代表的先进目标检测框架,虽然凭借其简洁API和高效推理能力大幅降低了使用门槛,但这也带来了一个隐性风险&#xf…

作者头像 李华
网站建设 2026/6/10 15:07:25

YOLOv8支持多语言界面吗?国际化进展通报

YOLOv8支持多语言界面吗?国际化进展通报 在人工智能技术加速普及的今天,一个开源项目的“友好度”往往不只体现在性能指标上,更在于它是否能让全球开发者无障碍地使用。YOLOv8 作为当前最受欢迎的目标检测框架之一,凭借其简洁 AP…

作者头像 李华
网站建设 2026/6/10 12:33:15

深入剖析CVE-2024–32002:通过git clone实现远程代码执行

Exploiting CVE-2024–32002: Git RCE via git clone 概述 首先,我们来了解一下这个漏洞。CVE-2024–32002 (CVSS 9.1) 是一个发生在 Git 中的严重级别(Critical)漏洞。攻击者通过 git clone 命令克隆一个恶意仓库,并且必须使用 -…

作者头像 李华
网站建设 2026/6/10 12:38:17

YOLOv8镜像发布:支持Jupyter和SSH双模式访问

YOLOv8镜像发布:支持Jupyter和SSH双模式访问 在深度学习项目中,最让人头疼的往往不是模型本身,而是“环境配不起来”——CUDA版本不对、PyTorch装失败、依赖包冲突……尤其当团队协作时,“在我机器上能跑”的经典难题屡见不鲜。有…

作者头像 李华
网站建设 2026/6/10 13:06:42

PHP实时数据处理架构设计(工业级稳定性保障方案)

第一章:PHP实时数据处理架构设计(工业级稳定性保障方案)在构建高可用的实时数据处理系统时,PHP凭借其成熟的生态和灵活的扩展能力,能够在消息队列、事件驱动与异步处理层面实现工业级稳定架构。通过合理的设计模式与基…

作者头像 李华
网站建设 2026/6/10 14:22:14

YOLOv8依赖库版本锁定:requirements.txt生成策略

YOLOv8依赖库版本锁定:requirements.txt生成策略 在现代计算机视觉项目的开发与部署中,一个看似微不足道的文本文件——requirements.txt,往往决定了整个系统的稳定性与可复现性。尤其是在使用如YOLOv8这类高度集成、依赖复杂的深度学习框架时…

作者头像 李华