01-为什么学Docker?告别"在我电脑上能运行"的魔咒

别再被"环境配置"折磨了 说实话,你是不是也有过这些瞬间: 开发环境运行好好的,部署到服务器就崩了 换台电脑重新配置环境要花一整天 团队开发时,每个人环境都不一样,bug复现都困难 服务器上同时运行多个项目,依赖包冲突到爆炸 别再假装这些问题是"正常"的了,用Docker吧! 为...

阅读全文 →

02-Docker快速入门-10分钟理解容器

10分钟看懂Docker核心概念 别急着想复杂的概念,我们先通过一个简单的例子理解Docker。 一个最简单的例子 想象你要开一家咖啡店: 传统部署方式 每开一家分店都要: 找房子(服务器) 装修(安装操作系统、依赖环境) 买设备(安装软件) 招人培训(配置环境) 开业(部署应用...

阅读全文 →

03-Docker安装配置-30分钟搞定

第一次装Docker别翻车 很多人第一步就放弃了,因为装软件装崩了。别慌,我带你一步步来,保证你30分钟内搞定。 Windows用户看这里 方案1:Docker Desktop(推荐) 下载地址:https://www.docker.com/products/docker-des...

阅读全文 →

04-镜像操作-理解Docker的"蓝图"

镜像是Docker的核心 前几章我们说镜像是一个"模板",现在深入理解一下:镜像是Docker的核心,没有镜像就没有容器。 镜像的基本操作 1. 拉取镜像 从仓库下载镜像到本地: # 基本用法 docker pull 镜像名 # 示例 docker pull nginx dock...

阅读全文 →

05-容器操作-运行你的第一个程序

容器是镜像的运行实例 前几章我们说镜像是"模板",容器就是"根据模板做出来的实例"。今天深入学习容器的操作。 容器的生命周期 ┌─────────┐ create ┌─────────┐ │ 创建 │ ────────> │ 启动 │ └─────────┘ └────┬────...

阅读全文 →

06-Dockerfile-编写自己的镜像

Dockerfile是镜像的"配方" 前几章我们用现成的镜像,今天学习如何编写Dockerfile,创建自己的镜像。 什么是Dockerfile? Dockerfile是一个文本文件,包含一系列指令,用于构建Docker镜像。 类比: Dockerfile = 烹饪食谱 镜像 =...

阅读全文 →

07-数据持久化-容器里数据不丢失

容器删除,数据还在吗? 问题:容器默认的文件系统是临时的,容器删除后,所有数据都会丢失。 场景: 运行一个MySQL数据库,插入了大量数据 删除容器重新创建 数据全部丢失! 解决:使用数据卷(Volume)实现数据持久化。 数据卷(Volume) 什么是数据卷? 数据卷是Dock...

阅读全文 →

08-网络管理-让容器之间互相通信

容器之间怎么通信? 问题:默认情况下,容器之间是隔离的,无法直接访问。 场景: Web应用容器需要访问数据库容器 多个微服务容器需要互相调用 外部需要访问容器内的服务 解决:使用Docker网络实现容器间通信。 Docker网络基础 网络类型 1. bridge(桥接网络,默认)...

阅读全文 →

10-实战项目1-Python项目打包部署

用Docker部署Python项目 今天我们来做第一个实战项目:把一个Python Web应用打包成Docker镜像并部署。 项目背景 假设我们有一个Flask Web应用: 提供RESTful API 使用MySQL数据库 使用Redis缓存 需要持久化数据 项目结构 my-f...

阅读全文 →