编辑 docker 容器内部文件

一个容器跑起来,有时候得修改内部的配置文件。但是容器内部的 shell 有时甚至连个 vi 都不带,笨方法,docker cp 出来,改完再放进去。你知道的问题还好改,如果是边调试连修改,就很烦人了。

于是,我就写了个函数。可以实现修改后多次直接上传。

效果图:

 

进入容器查看文件是否修改成功

 

代码很简单,不解释了。

function docker.open(){

    local container="$1"
    local infile="$2"
    local outfile=/tmp/`basename $infile`
    docker cp $container:$infile $outfile && gedit $outfile || return $?

    local update=""
    local times=1
    echo -e "\033[31m回车更新, exit 退出\033[0m"
    until [ "$update" == 'exit' ]
    do
        read -p "第 $times 次更新:" update
        [ "$update" == 'exit' ] && break
        docker cp $outfile $container:$infile || { echo "更新失败!"; return 1; }
        times=`expr $times + 1`
    done
    
}

 

 

  

 

posted @ 2020-12-17 20:43  心随所遇  阅读(1734)  评论(0编辑  收藏  举报