docker包括那些内容

  1. Docker Engine(核心引擎)

    Docker Daemon:后台服务进程,负责管理容器、镜像、网络等

    REST API:提供接口让外部程序与 Daemon 通信

    Docker CLI:命令行工具,就是你在终端输入的 docker run、docker build 这些命令

  2. Docker Image(镜像)

    容器的"模板",只读的,类似一个打包好的系统快照

    由多个层(Layer) 叠加构成,每一层对应 Dockerfile 里的一条指令

    存储在本地或镜像仓库中

  3. Docker Container(容器)

    镜像运行起来就是容器,是真正干活的单元

    每个容器相互隔离,有自己的文件系统、进程、网络

    可以启动、停止、删除,删除后数据默认不保留

  4. Dockerfile

    一个文本文件,描述如何构建镜像的步骤

    常见指令包括 FROM、RUN、COPY、CMD、EXPOSE 等

  5. Docker Registry(镜像仓库)

    存储和分发镜像的地方

    Docker Hub 是官方公共仓库

    也可以搭建私有仓库,比如 Harbor

  6. Docker Network(网络)

    容器之间或容器与外部通信的机制,主要有几种模式:

    bridge:默认模式,容器通过虚拟网桥通信

    host:直接使用宿主机网络

    none:完全隔离,无网络

    overlay:跨主机容器通信,用于集群场景

  7. Docker Volume(数据卷)

    解决容器数据持久化的问题

    容器删除后数据仍然保留

    也可以在多个容器之间共享数据

  8. Docker Compose

    用一个 docker-compose.yml 文件定义和管理多容器应用

    一条 docker compose up 命令就能启动整套服务(比如同时启动应用、数据库、缓存)

  9. Docker Swarm,实际使用k8s比较多

    Docker 原生的容器编排工具

    把多台机器组成一个集群,统一调度和管理容器

    功能比 Kubernetes 简单,但上手更容易

进阶:

使用REST API,直接来控制docker

举例:

bash 复制代码
sudo curl --unix-socket /var/run/docker.sock -X POST \
     -H "Content-Type: application/json" \
     -d '{"Image": "alpine", "Cmd": ["echo", "hello API"]}' \
     http://localhost/containers/create?name=my-api-test
     # localhost是地址,containers/create是接口,其他的请求数据

在本地创建镜像仓库:

运行仓库容器 (docker自带) --> 上传镜像到本地仓库

相关推荐
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Patrick_Wilson3 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy3 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭3 天前
运行你的第一个Docker容器
后端·docker·容器
荣--4 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
宋均浩4 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Avan_菜菜5 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵5 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1115 天前
LM Studio Docker 部署——本地大模型一键启动
docker