猿创征文|【云原生】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
目录
相关文章
|
8月前
|
存储 Java Linux
【Docker】(2)还在浏览网页寻找Docker命令?本文全面列举与使用Docker里的各个命令!想要什么命令直接从本文拿!
docker有着比VM更少的抽象层 由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源 因此在CPU、内存利用率上Docker将会在效率上有明显优势 docker利用的时宿主机的内核,而不需要加载操作系统OS内核 当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统内核 进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程时分钟级别的。 而Docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个Docker容器只需
874 124
|
8月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
878 6
|
11月前
|
安全 Unix Linux
Docker中授权普通用户使用docker命令以及解决无权限访问/var/run/docker.sock错误。
通过上述步骤,可以有效解决普通用户无法使用Docker命令的问题,同时处理 `/var/run/docker.sock`权限错误。这样的设置不仅方便用户使用Docker提供的各项服务,同时还能保护系统的安全性。在进行此类配置更改时,请确保理解每一步骤的作用及潜在的安全风险,尤其是在修改文件权限时。在实际的操作中,始终应该努力保持系统的最低必要权限,避免过度放宽权限,这是保障系统安全的一个重要方针。
3619 75
|
9月前
|
关系型数据库 MySQL Linux
事项驱动的项目管理工具Dectask的Docker安装教程
Dectask是智能驱动的新一代项目协作工具,本人介绍其Docker安装教程。
242 2
|
10月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
625 16
|
Docker 容器
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p <宿主机端口>:<容器端口>`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
1371 57
|
前端开发 数据安全/隐私保护 计算机视觉
MAZANOKE:一款隐私优先的浏览器图像优化工具及Docker部署指南
MAZANOKE 是一款简易的图片优化工具,它直接在浏览器中运行,支持离线使用,并确保您的图片始终保留在设备上,绝不外泄。 这款专为普通人设计的工具,适合与亲友分享使用,是那些来路不明的"免费"在线工具的可靠替代品。
540 1
MAZANOKE:一款隐私优先的浏览器图像优化工具及Docker部署指南
|
11月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
802 11
|
存储 数据可视化 数据安全/隐私保护
【赵渝强老师】Docker的图形化管理工具
本文介绍了三种主流的Docker图形化管理工具:Docker UI、Portainer和Shipyard。Docker UI(现名UI for Docker)适合初学者,支持容器管理并可显示容器关系图;Portainer轻量级且功能全面,支持单机与集群管理;Shipyard专注于多主机集群管理,提供镜像、容器及节点管理功能,并包含engine和rethinkdb两个核心组件。文中还通过图文结合的方式展示了各工具的安装与使用方法。
1155 5
【赵渝强老师】Docker的图形化管理工具
|
10月前
|
Ubuntu 网络安全 PHP
如何使用vscode的Docker插件管理ubuntu 拉取服务器的镜像以及创建容器
本测试镜像旨在记录使用vscode的Docker插件拉取病创建Dockerfile,以及拉取镜像。