news 2026/9/9 3:29:21

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/8/28 15:47:39

PHP与MQTT协议融合实践,构建低功耗智能控制系统的终极指南

第一章:PHP 智能家居设备控制接口开发在现代物联网架构中,PHP 作为后端服务的轻量级解决方案,广泛应用于智能家居设备的控制接口开发。通过构建 RESTful API,PHP 能够与硬件网关通信,实现对灯光、温控、安防等设备的远…

作者头像 李华
网站建设 2026/9/3 3:10:10

关于 RTP/AVPF 的简单讨论

咨询了国内非常好的FreeSWITCH开发工程师,结论是一致的,那就是Fs的bug相关规范是: https://www.rfc-editor.org/rfc/rfc4585.htmlF的意思是feedback要求根据rtcp的汇报情况动态调整码率,a说我丢包啦,b收到后降码率&…

作者头像 李华
网站建设 2026/8/29 11:00:19

YOLOv8备份策略:重要模型文件异地保存

YOLOv8备份策略:重要模型文件异地保存 在现代AI研发中,训练一个高性能的目标检测模型可能需要数小时甚至数天的GPU资源投入。一旦因服务器宕机、误删或容器重建导致best.pt丢失,不仅意味着计算成本白费,更可能导致项目进度严重延误…

作者头像 李华
网站建设 2026/9/5 1:21:19

国产化替代中的关键一环:数字孪生云渲染技术发展趋势与生态构建

在推动产业数字化转型与核心技术自主可控的时代背景下,国产化替代已成为国家发展的重要战略方向。数字孪生,作为连接物理世界与数字世界的核心纽带,正广泛应用于智能制造、智慧城市、工业运维等领域。而支撑高保真、实时交互数字孪生应用流畅…

作者头像 李华
网站建设 2026/8/27 15:57:12

YOLOv8训练中断怎么办?断点续训checkpoint机制详解

YOLOv8训练中断怎么办?断点续训checkpoint机制详解 在深度学习项目中,最令人沮丧的场景之一莫过于:模型已经跑了几十个epoch,验证损失稳步下降,mAP持续上升——结果服务器突然重启、电源跳闸,或者云实例被抢…

作者头像 李华