全面图解Docker架构设计:掌握Docker全链路思维与优化(命令篇)
Docker 是一个革命性的开放平台,用于开发、交付和运行应用程序。通过使用 Docker,开发者可以打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何支持 Docker 的环境中,在不同环境中实现一致的运行。无论是在虚拟机、物理服务器、数据中心还是云平台,Docker 都能确保应用的快速、可靠地部署和运行。Docker 提供的不仅仅是容器,它还构建了一个庞大的生态系统,包括 D
Docker 是一个革命性的开放平台,用于开发、交付和运行应用程序。通过使用 Docker,开发者可以打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何支持 Docker 的环境中,在不同环境中实现一致的运行。无论是在虚拟机、物理服务器、数据中心还是云平台,Docker 都能确保应用的快速、可靠地部署和运行。
Docker 提供的不仅仅是容器,它还构建了一个庞大的生态系统,包括 Docker Hub、Docker Compose、Docker Swarm 等工具,这些工具涵盖了从开发到生产、从单一容器到容器编排的全方位需求。Docker 还支持多种编程语言、框架和中间件,使其成为现代应用开发和部署的首选工具。
肖哥弹架构 跟大家“弹弹” 高并发锁, 关注公号回复 ‘mvcc’ 获得手写数据库事务代码
欢迎 点赞,关注,评论。
关注公号Solomon肖哥弹架构获取更多精彩内容SS
历史热点文章
- 解锁大语言模型参数:零基础掌握大型语言模型参数奥秘与实践指南
- 高性能连接池之HikariCP框架分析:高性能逐条分解(架构师篇)
- 缓存雪崩/穿透/击穿/失效原理图/14种缓存数据特征+10种数据一致性方案
- Java 8函数式编程全攻略:43种函数式业务代码实战案例解析(收藏版)
- 一个项目代码讲清楚DO/PO/BO/AO/E/DTO/DAO/ POJO/VO
- 17个Mybatis Plugs注解:Mybatis Plugs插件架构设计与注解案例(必须收藏)
本节内容
11、DockerFile管理命令表
命令类别 | 二级分类 | 命令 | 描述 |
---|---|---|---|
镜像 | 创建与构建 | docker builder | 使用 Dockerfile 构建镜像 |
docker buildx | 使用 BuildKit 构建镜像 | ||
保存与加载 | docker commit | 从更改的容器创建新的镜像 | |
docker save | 保存一个或多个镜像为 tar 归档 | ||
docker load | 加载一个镜像或仓库 | ||
导入与导出 | docker import | 从 tar 归档文件创建一个新的镜像 | |
docker export | 导出容器的文件系统作为一个 tar 归档 | ||
管理 | docker images | 列出本地镜像 | |
docker pull | 从镜像仓库拉取一个镜像 | ||
docker push | 将一个镜像推送到镜像仓库 | ||
docker rmi | 删除一个或多个镜像 | ||
标记 | docker tag | 为本地镜像打标签 | |
容器 | 操作与管理 | docker container | 管理容器 |
docker container commit | 从容器创建一个新的镜像 | ||
docker container cp | 从容器复制文件或文件夹到本地文件系统 | ||
docker container create | 创建一个新的容器 | ||
docker container diff | 检查容器文件系统的变化 | ||
docker container exec | 在运行的容器中执行命令 | ||
docker container export | 导出容器的文件系统 | ||
docker container inspect | 获取容器的详细信息 | ||
docker container kill | 杀死一个或多个运行的容器 | ||
docker container logs | 获取容器的日志 | ||
列出与搜索 | docker container ls | 列出当前的容器 | |
docker container prune | 删除所有未使用的容器 | ||
运行与启动 | docker container run | 运行一个新的容器 | |
docker container start | 启动一个或多个已经停止的容器 | ||
停止与重启 | docker container stop | 停止一个运行的容器 | |
docker container restart | 重启一个运行的容器 | ||
查看状态 | docker container top | 查看容器中运行的进程 | |
docker container stats | 获取容器的统计信息 | ||
清理 | docker container rm | 删除一个或多个容器 | |
docker container prune | 删除所有未使用的容器 | ||
网络 | 操作与管理 | docker network | 管理 Docker 网络 |
docker network connect | 将容器连接到一个网络 | ||
docker network create | 创建一个新的网络 | ||
docker network disconnect | 从网络断开一个容器 | ||
docker network inspect | 获取网络的详细信息 | ||
列出与搜索 | docker network ls | 列出网络 | |
docker network prune | 删除所有未使用的网络 | ||
docker network rm | 删除一个或多个网络 | ||
docker network update | 更新网络 | ||
卷 | 操作与管理 | docker volume | 管理 Docker 卷 |
docker volume create | 创建一个新的卷 | ||
docker volume inspect | 获取卷的详细信息 | ||
列出与搜索 | docker volume ls | 列出卷 | |
docker volume prune | 删除所有未使用的卷 | ||
docker volume rm | 删除一个或多个卷 | ||
守护进程 | docker daemon | 启动 Docker 守护进程 | |
集群管理 | 操作与管理 | docker swarm | 管理 Docker Swarm |
docker swarm ca | 获取或轮询根 CA | ||
docker swarm init | 初始化 Swarm 模式 | ||
docker swarm join | 将节点加入到 Swarm 模式 | ||
docker swarm leave | 使节点离开 Swarm 模式 | ||
docker swarm update | 更新 Swarm | ||
docker swarm unlock | 解锁 Swarm | ||
docker swarm unlock-key | 获取 Swarm 解锁密钥 | ||
配置 | 操作与管理 | docker config | 管理 Docker 配置 |
docker config create | 创建一个新的配置 | ||
docker config inspect | 获取配置的详细信息 | ||
列出与搜索 | docker config ls | 列出配置 | |
docker config rm | 删除一个或多个配置 | ||
插件 | 操作与管理 | docker plugin | 管理 Docker 插件 |
docker plugin create | 创建一个新的插件 | ||
docker plugin disable | 禁用插件 | ||
docker plugin enable | 启用插件 | ||
docker plugin inspect | 获取插件的详细信息 | ||
列出与搜索 | docker plugin ls | 列出插件 | |
docker plugin push | 推送插件到镜像仓库 | ||
docker plugin rm | 删除一个或多个插件 | ||
docker plugin set | 更新插件设置 | ||
docker plugin upgrade | 升级插件 | ||
系统 | 信息与状态 | docker system | 管理 Docker |
docker system df | 显示 Docker 数据使用情况 | ||
docker system events | 获取 Docker 事件 | ||
docker system info | 显示 Docker 系统信息 | ||
清理 | docker system prune | 删除未使用的 Docker 对象 | |
docker system update | 更新 Docker | ||
帮助 | docker --help | 获取命令帮助信息 | |
docker version | 显示 Docker 的版本信息 |
12、DockerFile管理命令案例
12.1 镜像
创建与构建
docker build
# 使用当前目录下的Dockerfile构建一个新的镜像,并命名为"my-image"
docker build -t my-image .
说明:
-t my-image
: 指定镜像的名称和标签。.
: 表示使用当前目录下的Dockerfile。
docker buildx
# 使用BuildKit构建一个新的镜像,并命名为"my-image"
docker buildx build -t my-image --platform linux/amd64,linux/arm64 .
说明:
--platform linux/amd64,linux/arm64
: 指定构建的镜像平台。.
: 表示使用当前目录下的Dockerfile。
保存与加载
docker commit
# 从名为"my-container"的容器创建一个新的镜像,并命名为"my-new-image"
docker commit my-container my-new-image
说明:
my-container
: 指定容器名称。my-new-image
: 指定新镜像名称。
docker save
# 将名为"my-image"的镜像保存为tar文件
docker save -o my-image.tar my-image
说明:
-o my-image.tar
: 指定输出文件的名称。
docker load
# 从tar文件加载镜像
docker load -i my-image.tar
说明:
-i my-image.tar
: 指定输入文件的名称。
12.2 容器
操作与管理
docker container
# 列出当前的所有容器
docker container ls
说明:
docker container
: 管理容器的命令。
docker container commit
# 从名为"my-container"的容器创建一个新的镜像,并命名为"my-new-image"
docker container commit my-container my-new-image
说明:
my-container
: 指定容器名称。my-new-image
: 指定新镜像名称。
docker container cp
# 从名为"my-container"的容器复制文件到当前目录
docker container cp my-container:/path/to/file ./
说明:
my-container
: 容器名称。/path/to/file
: 容器内部文件的路径。./
: 目标路径,这里表示当前目录。
docker container create
# 创建一个新的容器,但不启动它
docker container create --name my-container my-image
说明:
--name my-container
: 指定容器名称。my-image
: 指定基础镜像。
docker container diff
# 查看名为"my-container"的容器的文件系统变化
docker container diff my-container
说明:
my-container
: 指定容器名称。
docker container exec
# 在名为"my-container"的容器中执行命令
docker container exec my-container ls
说明:
my-container
: 指定容器名称。ls
: 要执行的命令。
docker container export
# 导出名为"my-container"的容器的文件系统
docker container export my-container > my-container.tar
说明:
my-container
: 指定容器名称。>
: 将导出的数据流重定向到文件。
docker container inspect
# 获取名为"my-container"的容器的详细信息
docker container inspect my-container
说明:
my-container
: 指定容器名称。
docker container kill
# 杀死名为"my-container"的容器
docker container kill my-container
说明:
my-container
: 指定容器名称。
docker container logs
# 获取名为"my-container"的容器的日志
docker container logs my-container
说明:
my-container
: 指定容器名称。
列出与搜索
docker container ls
# 列出当前的所有容器
docker container ls
说明:
docker container ls
: 列出当前运行的容器。
docker container prune
# 删除所有未使用的容器
docker container prune
说明:
docker container prune
: 删除未使用的容器。
12.3 网络
操作与管理
docker network
# 列出当前的所有网络
docker network ls
说明:
docker network
: 管理Docker网络的命令。
docker network connect
# 将名为"my-container"的容器连接到"my-network"网络
docker network connect my-network my-container
说明:
my-network
: 指定网络名称。my-container
: 指定容器名称。
docker network create
# 创建一个新的网络,并命名为"my-network"
docker network create my-network
说明:
my-network
: 指定网络名称。
docker network disconnect
# 从"my-network"网络断开名为"my-container"的容器
docker network disconnect my-network my-container
说明:
my-network
: 指定网络名称。my-container
: 指定容器名称。
docker network inspect
# 获取"my-network"网络的详细信息
docker network inspect my-network
说明:
my-network
: 指定网络名称。
列出与搜索
docker network ls
# 列出当前的所有网络
docker network ls
说明:
docker network ls
: 列出所有网络。
docker network prune
# 删除所有未使用的网络
docker network prune
说明:
docker network prune
: 删除未使用的网络。
docker network rm
# 删除名为"my-network"的网络
docker network rm my-network
说明:
my-network
: 指定网络名称。
docker network update
# 更新"my-network"网络的配置
docker network update my-network
说明:
my-network
: 指定网络名称。
12.4 卷
操作与管理
docker volume
# 列出当前的所有卷
docker volume ls
说明:
docker volume
: 管理Docker卷的命令。
docker volume create
# 创建一个新的卷,并命名为"my-volume"
docker volume create my-volume
说明:
my-volume
: 指定卷名称。
docker volume inspect
# 获取"my-volume"卷的详细信息
docker volume inspect my-volume
说明:
my-volume
: 指定卷名称。
列出与搜索
docker volume ls
# 列出当前的所有卷
docker volume ls
说明:
docker volume ls
: 列出所有卷。
docker volume prune
# 删除所有未使用的卷
docker volume prune
说明:
docker volume prune
: 删除未使用的卷。
docker volume rm
# 删除名为"my-volume"的卷
docker volume rm my-volume
说明:
my-volume
: 指定卷名称。
守护进程
docker daemon
# 启动Docker守护进程
dockerd
说明:
dockerd
: 启动Docker守护进程。
12.5 集群管理
操作与管理
docker swarm
# 列出当前Swarm模式的状态
docker swarm ls
说明:
docker swarm
: 管理Docker Swarm的命令。
docker swarm ca
# 获取或轮询根CA
docker swarm ca --cert-rotate
说明:
--cert-rotate
: 轮询并更新证书。
docker swarm init
# 初始化Swarm模式
docker swarm init --advertise-addr 192.168.1.1
说明:
--advertise-addr 192.168.1.1
: 指定Swarm管理节点的IP地址。
docker swarm join
# 将节点加入到Swarm模式
docker swarm join --token <SWARM_JOIN_TOKEN> 192.168.1.1:2377
说明:
<SWARM_JOIN_TOKEN>
: 加入令牌,由docker swarm init
命令生成。192.168.1.1:2377
: Swarm管理节点的地址和端口。
docker swarm leave
# 使节点离开Swarm模式
docker swarm leave --force
说明:
--force
: 强制离开Swarm模式。
docker swarm update
# 更新Swarm模式的配置
docker swarm update --autolock=true
说明:
--autolock=true
: 启用自动锁定。
docker swarm unlock
# 解锁Swarm模式
docker swarm unlock
说明:
- 输入解锁密钥以解锁Swarm模式。
docker swarm unlock-key
# 获取Swarm解锁密钥
docker swarm unlock-key
说明:
- 获取Swarm解锁密钥。
12.6 配置
操作与管理
docker config
# 列出当前的所有配置
docker config ls
说明:
docker config
: 管理Docker配置的命令。
docker config create
# 创建一个新的配置,并命名为"my-config"
echo "hello world" | docker config create my-config -
说明:
echo "hello world"
: 输出文本内容。my-config
: 指定新配置名称。
docker config inspect
# 获取"my-config"配置的详细信息
docker config inspect my-config
说明:
my-config
: 指定配置名称。
列出与搜索
docker config ls
# 列出当前的所有配置
docker config ls
说明:
docker config ls
: 列出所有配置。
docker config rm
# 删除名为"my-config"的配置
docker config rm my-config
说明:
my-config
: 指定配置名称。
12.7 插件
操作与管理
docker plugin
# 列出当前的所有插件
docker plugin ls
说明:
docker plugin
: 管理Docker插件的命令。
docker plugin create
# 创建一个新的插件
docker plugin create my-plugin /path/to/plugin:version
说明:
my-plugin
: 指定插件名称。/path/to/plugin:version
: 指定插件的路径和版本。
docker plugin disable
# 禁用名为"my-plugin"的插件
docker plugin disable my-plugin
说明:
my-plugin
: 指定插件名称。
docker plugin enable
# 启用名为"my-plugin"的插件
docker plugin enable my-plugin
说明:
my-plugin
: 指定插件名称。
docker plugin inspect
# 获取"my-plugin"插件的详细信息
docker plugin inspect my-plugin
说明:
my-plugin
: 指定插件名称。
列出与搜索
docker plugin ls
# 列出当前的所有插件
docker plugin ls
说明:
docker plugin ls
: 列出所有插件。
docker plugin push
# 推送名为"my-plugin"的插件到镜像仓库
docker plugin push my-plugin
说明:
my-plugin
: 指定插件名称。
docker plugin rm
# 删除名为"my-plugin"的插件
docker plugin rm my-plugin
说明:
my-plugin
: 指定插件名称。
docker plugin set
# 更新"my-plugin"插件的配置
docker plugin set my-plugin ENV my-key=my-value
说明:
my-plugin
: 指定插件名称。ENV my-key=my-value
: 设置环境变量。
docker plugin upgrade
# 升级名为"my-plugin"的插件
docker plugin upgrade my-plugin my-plugin:new-version
说明:
my-plugin
: 指定插件名称。my-plugin:new-version
: 指定新版本。
12.8 系统
信息与状态
docker system
# 显示Docker系统的状态
docker system df
说明:
docker system
: 管理Docker系统命令。
docker system df
# 显示Docker数据的使用情况
docker system df
说明:
docker system df
: 显示Docker数据使用情况。
docker system events
# 获取Docker事件
docker system events
说明:
docker system events
: 获取Docker事件。
docker system info
# 显示Docker系统信息
docker system info
说明:
docker system info
: 显示Docker系统信息。
清理
docker system prune
# 清理未使用的Docker对象
docker system prune
说明:
docker system prune
: 清理未使用的对象。
docker system update
# 更新Docker
docker system update
说明:
docker system update
: 更新Docker。
12.9 帮助
docker --help
# 获取Docker命令的帮助信息
docker --help
说明:
docker --help
: 获取Docker命令的帮助信息。
docker version
# 显示Docker的版本信息
docker version
说明:
docker version
: 显示Docker的版本信息。
更多推荐
所有评论(0)