docker run变Docker Compose 文件备份docker配置

备份通过docker run命令运行起来的容器:
主要通过项目:

red5d/docker-autocompose

来实现的

一行脚本:

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock red5d/docker-autocompose $(docker ps -q) > docker-compose.yml

这里的$(docker ps -q) 可以换成单个的容器名,这里我直接备份所有在运行中的容器

其他:calculate_docker_volume_size.sh
查看docker运行卷大小的脚本:
要用管理员权限运行

#!/bin/bash

# 初始化总大小
total_size=0

# 获取所有 Docker 卷
for volume in $(docker volume ls -q); do
    # 获取卷的路径
    volume_path="/var/lib/docker/volumes/$volume/_data"

    # 检查路径是否存在
    if [ -d "$volume_path" ]; then
        # 获取卷的大小,输出字节数
        size=$(du -sb "$volume_path" 2>/dev/null | cut -f1)

        # 如果 du 命令失败或没有获取到大小,跳过
        if [ $? -ne 0 ] || [ -z "$size" ]; then
            echo "Warning: Could not get size for volume $volume ($volume_path)"
            continue
        fi

        # 累加总大小
        total_size=$((total_size + size))
    else
        echo "Warning: $volume_path does not exist or is not a directory"
    fi
done

# 如果总大小大于零,转换为人类可读格式
if [ $total_size -gt 0 ]; then
    echo "Total volume data size: $(numfmt --to=iec $total_size)"
else
    echo "No valid volumes found or no data to calculate."
fi
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇