猿创征文|【云原生】Docker小工具:runlike与whaler(打印容器的启动命令与导出镜像的dockerfile)

简介: 自上次发现了一款从docker镜像里提取dockerfile的工具,今天我们又发现了两个有趣的docker小工具,其中有一个也是提取dockerfile的。

在这里插入图片描述

@[toc]

前言

  自上次发现了一款从docker镜像里提取dockerfile的工具,今天我们又发现了两个有趣的docker小工具,其中有一个也是提取dockerfile的。

两个有趣的docker小工具:runlike与whaler

  • runlike:通过容器打印出容器的启动命令
  • whaler:通过镜像导出dockerfile

runlike:通过容器打印出容器的启动命令

方法一:直接通过pip方式安装

如果没有pip可以选择先装pip;参考: 【Linux】中安装pip(详细教程)
pip install runlike

方法二:通过容器方式免安装使用

使用设置别名的方式来做,如果长期使用,可设置为永久别名;参考: Linux设置永久别名alias的方法
alias runlike="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike"

这种方法需要拉取镜像,自动创建容器来加载这个命令,个人感觉第一种方法比较好一些;

用法

runlike 容器名/容器id
runlike -p 容器名/容器id

runlike打印出来的是很多在一行;例如:

在这里插入图片描述

runlike -p 加-p参数会给你整理一行一行整理出来,看着比较简洁;例如:

在这里插入图片描述

whaler:通过镜像导出dockerfile

  平时可能会构建很多不同的镜像,比如维护一些基础Docker镜像、想查看一些公开仓库的Docker镜像是怎么构建的,或因为长时间不维护找不到当时构建镜像的Dockerfile,或者因为网络无法查看时,能从镜像导出Dockerfile就显得很重要,这里可以通过whaler来快速的导出. 这里我们依旧不安装,通过容器化的方式使用whaler命令设置别名,便于使用;其实他和我写过的另一个命令是一样的dfimage,都是一样的效果;
如何从docker镜像里提取dockerfile

同样的设置永久的别名可参考:Linux设置永久别名alias的方法

alias whaler="docker run -t --rm -v /var/run/docker.sock:/var/run/docker.sock:ro pegleg/whaler"

设置完别名就可以来从镜像中导出dockerfile了;

用法

whaler 镜像名/镜像id
whaler -sV=1.36 镜像名/镜像id

直接用whaler会报错,需要添加一个参数;

在这里插入图片描述

这样就可以出来了,也可以重定向到一个文件中>a.txt就可以;
当然这个比较少,因为这个镜像也就只有1M,所以,不会输出很多东西,感兴趣的朋友可以去自己写一个镜像,或者去官网拉一个大一点的镜像,然后再来测试,就会有很多很多的,特别详细;

在这里插入图片描述

相关文章

文章一: 【Linux】中安装pip(详细教程)
文章二: Linux设置永久别名alias的方法
文章三: 如何从docker镜像里提取dockerfile
目录
相关文章
|
5月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
439 100
|
5月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
397 99
|
5月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
500 98
|
5月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
4月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
621 5
|
5月前
|
关系型数据库 MySQL Linux
事项驱动的项目管理工具Dectask的Docker安装教程
Dectask是智能驱动的新一代项目协作工具,本人介绍其Docker安装教程。
150 2
|
5月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
246 8
|
6月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
422 16
|
存储 Cloud Native 数据处理
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式
本文整理自阿里云资深技术专家、Apache Flink PMC 成员梅源在 Flink Forward Asia 新加坡 2025上的分享,深入解析 Flink 状态管理系统的发展历程,从核心设计到 Flink 2.0 存算分离架构,并展望未来基于流批一体的通用增量计算方向。
448 0
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式
|
6月前
|
运维 监控 Cloud Native
从本土到全球,云原生架构护航灵犀互娱游戏出海
本文内容整理自「 2025 中企出海大会·游戏与互娱出海分论坛」,灵犀互娱基础架构负责人朱晓靖的演讲内容,从技术层面分享云原生架构护航灵犀互娱游戏出海经验。
591 15