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

Docker 入门笔记(后端开发必学)

现在后端开发:

几乎都会接触:

Docker

尤其:

Go + Gin + MySQL + Redis

项目里。

很多新人第一次学 Docker:

会感觉:

镜像? 容器? 虚拟化?

非常抽象。

其实:

Docker 的核心思想:

并不复杂。


一、Docker 到底是什么

一句话:

Docker = 轻量级应用运行环境

你可以理解成:

应用打包器 + 运行器

二、为什么需要 Docker

以前开发:

经常出现:

我电脑能运行 你电脑运行不了

因为:

每个人:

  • 环境不同
  • 软件版本不同
  • 配置不同

例如:

MySQL版本不同 Redis版本不同 Go版本不同

于是:

项目经常崩。


三、Docker 解决了什么问题

Docker 的核心思想:

把: 程序 + 环境 + 配置 全部打包

这样:

无论在哪台电脑:

都能一样运行

四、最经典一句话

Docker 最经典的一句话:

Build once, run anywhere

意思:

一次构建,到处运行

五、Docker 和虚拟机区别

很多新人:

会把 Docker 和虚拟机搞混。


虚拟机

例如:

VMware VirtualBox

特点:

模拟整个操作系统

非常重。


Docker

Docker:

共享宿主机内核

只隔离环境。

所以:

非常轻量 启动极快

六、Docker 核心概念(必须掌握)

Docker 最核心:

只有三个东西:

镜像(Image) 容器(Container) 仓库(Repository)

七、什么是镜像(Image)

镜像:

你可以理解成:

安装包模板

例如:

MySQL镜像 Redis镜像 Go镜像 Ubuntu镜像

类比

镜像像:

游戏安装包

它本身:

不能运行

只能:

拿来创建容器

八、什么是容器(Container)

容器:

是:

真正运行起来的东西

例如:

运行中的 MySQL 运行中的 Redis

类比

镜像 = 类 容器 = 对象

或者:

镜像 = 安装包 容器 = 安装后的程序

九、什么是仓库(Repository)

仓库:

用于:

存放镜像

最著名:

Docker Hub

类似:

GitHub

但:

GitHub 存代码。

Docker Hub:

存镜像

十、Docker 工作流程(重点)

Docker Hub 下载镜像 ↓ 通过镜像创建容器 ↓ 容器运行程序

十一、安装 Docker 后第一件事

测试:

docker-v

输出:

Docker version xxx

说明安装成功。


十二、运行第一个容器

例如:

运行 Redis。


下载并运行 Redis

dockerrun redis

Docker 会:


第一步

发现:

本地没有 redis 镜像

第二步

自动去 Docker Hub 下载。


第三步

创建 Redis 容器。


第四步

启动 Redis。


十三、docker run 到底干了什么

这一句:

dockerrun redis

其实:

包含:

下载镜像 创建容器 启动容器

三个步骤。


十四、查看运行中的容器

dockerps

十五、停止容器

dockerstop 容器ID

十六、删除容器

dockerrm容器ID

十七、查看镜像

dockerimages

十八、为什么后端开发离不开 Docker

因为:

现在项目:

不只是:

一个 Go 程序

而是:

Go MySQL Redis Nginx RabbitMQ MinIO

一大堆服务。

Docker 可以:

快速部署所有环境

十九、最经典开发场景

以前:

安装 MySQL:

官网下载 手动安装 配置环境变量 改配置文件

非常痛苦。

现在:

dockerrun mysql

直接启动。


二十、端口映射(重点)

例如:

dockerrun-p6379:6379 redis

含义:

宿主机端口 : 容器端口

6379:6379

表示:

你电脑的6379 映射到 Redis容器6379

这样:

Go 程序:

localhost:6379

才能连接到 Redis。


二十一、后台运行(重点)

dockerrun-dredis

-d

表示:

后台运行

否则:

容器会占着终端。


二十二、容器名字

dockerrun--namemyredis redis

表示:

给容器取名: myredis

否则:

Docker 会随机名字。


二十三、Docker 最常见命令

命令作用
docker images查看镜像
docker ps查看容器
docker run创建运行容器
docker stop停止容器
docker rm删除容器
docker pull下载镜像

二十四、Go 为什么特别适合 Docker

因为:

Go:

静态编译 单二进制文件

特别容易:

容器化

所以:

现在:

Go + Docker

非常流行。


二十五、真实开发部署流程

例如:

Gin 项目 ↓ 打包 Go 程序 ↓ 写 Dockerfile ↓ 构建镜像 ↓ 运行容器 ↓ 部署服务器

二十六、什么是 Dockerfile

Dockerfile:

本质:

镜像构建脚本

例如:

FROM golang:1.24 WORKDIR /app COPY . . RUN go build -o main . CMD ["./main"]

二十七、Docker 真正核心思想

你一定要理解:

Docker:

不是:

虚拟机

而是:

应用隔离运行环境

它真正解决的是:

环境一致性

二十八、后端学习 Docker 第一阶段学什么

先掌握:

1. Image 2. Container 3. docker run 4. docker ps 5. 端口映射 6. Dockerfile

就够了。

别一开始:

就研究:

K8s Swarm Compose

容易崩。


二十九、最后总结

Docker 本质:

轻量级容器技术

核心作用:

打包环境 隔离运行 快速部署

核心概念:

镜像 Image 容器 Container 仓库 Repository

核心流程:

下载镜像 ↓ 创建容器 ↓ 运行程序

现在后端开发:

Gin + MySQL + Redis + Docker

已经属于基础技能组合。

http://www.jsqmd.com/news/873860/

相关文章:

  • 事件驱动仿真技术在航天系统中的应用与优化
  • 电脑里的“大脑”和“画家”:CPU和GPU到底谁在偷偷帮你干活?
  • 观察Taotoken按Token计费模式如何帮助项目控制预算
  • 腾讯混元全新翻译模型Hy-MT2开源,小程序「腾讯Hy翻译」开放体验
  • Java并发编程:ReentrantLock与AQS原理剖析
  • 2026亲测10款降AIGC网站红黑榜!优缺点无死角剖析,达标率对标顶级水准
  • µVision调试器与SEGGER J-Link兼容性解析
  • 【咨询业AI Agent应用成熟度评估模型】:基于217家机构实测数据的4级能力图谱与升级路线图
  • Docker 日常操作笔记(开发最常用命令)
  • 为什么iPhone微信聊天记录搜不到“?“,而安卓可以。
  • 混合精度优化在LLM推理加速中的实践与调优
  • Keil MDK中System Viewer空白问题的解决方案
  • 社交AI Agent不是Chatbot!5个被99%团队忽略的协议层设计陷阱(附LinkedIn/小红书级SDK接口规范)
  • 通过curl命令直接测试Taotoken聊天补全接口的配置与调用方法
  • AI赋能 绿色未来 —— 华硕重磅亮相第二十八届海峡两岸经贸交易会
  • 3个实用方法彻底解决阅读APP书源失效问题
  • Docker 里面的镜像(Image)和容器(Container)到底是什么
  • Python爬虫实战:爬取论文期刊 文献整理+管理表生成
  • Claude不是在模仿人,是在重构认知:3个被忽略的递归反思协议(附企业级调优checklist)
  • 5个技巧让你用Python零成本获取A股专业数据
  • Python、BMA-Stacking融合LightGBM、GBDT、KNN多模型电商交易欺诈风险预警研究|附代码数据
  • Apple ID身份协商协议全解析:rO/scnt/m动态参数生成原理
  • 三亚夜市哪家最有特色 - 资讯纵览
  • pycryptodome导入失败的四大底层原因与诊断方案
  • 非球面高精加高精密恒温恒湿空调机组选哪家 - 资讯纵览
  • 清远厂房搬家公司哪家专业靠谱?TOP5收费标准与避坑指南 - 从来都是英雄出少年
  • PostgreSQL 性能优化:从 3 秒到 30 毫秒,我做了这 5 件事
  • Meta裁了8000人,员工拖着行李箱抢可乐
  • 满帮季报图解:营收28亿,净利10亿 派息8750万美元
  • 碳化硅衬底与器件:怎么分辨有真产能的原厂和贸易商