sh 使用http://yuml.me绘制一个显示docker镜像之间依赖关系的图表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 使用http://yuml.me绘制一个显示docker镜像之间依赖关系的图表相关的知识,希望对你有一定的参考价值。
#!/bin/bash
set -euo pipefail
repo=$1
dsl_text() {
while read d; do \
from=$(grep FROM $d | cut -d ' ' -f2)
name=$(grep '##' $d | sed "s|##||g" | jq -r .name)
echo "[$from]->[$repo/$name]" | sed "s|/|\/|g"
done < <(find . -name Dockerfile)
}
dsl_text_encoded() {
dsl_text | tr '\n' '+' \
| sed -r \
-e "s|\+|%2C\+|g" \
-e "s|\[|%5B|g" -e "s|]|%5D|g" \
-e "s|:|%3A|g" -e "s|>|%3E|g" \
-e "s|&|%26|g" -e "s|#|%23|g" -e "s|;|%3B|g"
}
yumlme() {
curl -s 'http://yuml.me/diagram/scruffy;dir:LR;scale:80/class/' \
-H 'Origin: http://yuml.me' \
-H 'Accept-Encoding: gzip, deflate' \
-H 'Accept-Language: fr,en-US;q=0.8,en;q=0.6' \
-H 'User-Agent: Mozilla/5.0 AppleWebKit/42 (KHTML, like Gecko) Chrome/42 Safari/42' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: */*' \
-H 'Referer: http://yuml.me/diagram/scruffy/class/draw' \
-H 'X-Requested-With: XMLHttpRequest' \
-H 'Connection: keep-alive' \
--data 'dsl_text='$(dsl_text_encoded) \
--compressed
}
main() {
cmd=$(yumlme | sed -r "s|(.*).png|sensible-browser http://yuml.me/edit/\1|")
echo "$cmd" && $cmd
}
main
以上是关于sh 使用http://yuml.me绘制一个显示docker镜像之间依赖关系的图表的主要内容,如果未能解决你的问题,请参考以下文章
sh Bash脚本,用于在RRD中存储ping数据并绘制该数据
Python绘制正弦余弦函数用到哪些函数?
使用 python 绘制图形并使用 HTML 显示它
使用 Retina 显示屏在画布上绘制图像
Jenkins Pipeline sh 显示名称/标签
为啥使用 Seaborn 绘制回归时截距显示不正确?