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

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 自上次发现了一款从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
目录
相关文章
|
6天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
3天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
118 77
|
11天前
|
监控 Docker 容器
在Docker容器中运行打包好的应用程序
在Docker容器中运行打包好的应用程序
|
4天前
|
数据建模 应用服务中间件 nginx
docker替换宿主与容器的映射端口和文件路径
通过正确配置 Docker 的端口和文件路径映射,可以有效地管理容器化应用程序,确保其高效运行和数据持久性。在生产环境中,动态替换映射配置有助于灵活应对各种需求变化。以上方法和步骤提供了一种可靠且易于操作的方案,帮助您轻松管理 Docker 容器的端口和路径映射。
29 3
|
11天前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
28 9
|
11天前
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
31 3
|
11天前
|
存储 安全 数据安全/隐私保护
Docker 容器化应用管理更加高效,但数据安全和业务连续性成为关键。
在数字化时代,Docker 容器化应用管理更加高效,但数据安全和业务连续性成为关键。本文探讨了 Docker 应用的备份与恢复策略,涵盖备份的重要性、内容、方法及常见工具,制定备份策略,恢复流程及注意事项,并通过案例分析和未来趋势展望,强调备份与恢复在保障应用安全中的重要性。
21 2
|
11天前
|
存储 安全 数据中心
Docker 容器凭借轻量级和高效的特性,成为应用部署的重要工具
Docker 容器凭借轻量级和高效的特性,成为应用部署的重要工具。本文探讨了 Docker 如何通过 Namespace 和 Cgroups 实现 CPU、内存、网络和存储资源的隔离,提高系统安全性和资源利用率,以及面临的挑战和应对策略。
28 1
|
11天前
|
存储 缓存 监控
Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
本文介绍了Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
41 7
|
11天前
|
存储 Prometheus 监控
Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行
本文深入探讨了在Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行。
23 5