zoukankan      html  css  js  c++  java
  • 扩展 docker 管理命令

    停止多个容器: docker stop <container1> <container2> <container3> 

    停止所有容器: docker stop $(docker ps -qa)  

    我想用  docker stop :all   来生成   docker stop $(docker ps -qa)   命令。就是特殊参数翻译成标准的命令。

    可能感觉也没啥用,但你会了这种思想,以后说不定能解决大问题呢。要不是 docker 命令提示干没了,我就觉得完美。当然,高手不需要命令提示,哈哈。

     

     把代码追加到 /etc/bash.bashrc 文件中

    function docker(){
    
        alias docker=`which $FUNCNAME`
        local manage="$1"
        local args="$@"
        shift 1
    
        case "$manage" in
            'start'|'stop')
                args=${args//':all'/'$(docker ps -qa)'}
            ;;
            'rm')
                args=${args//':all'/'-f $(docker ps -qa)'}
            ;;
            'image')
                args=${args//':all'/'$(docker image ls -qa)'}
                args=${args//':clear'/'$(docker image ls -f "dangling=true" -q)'}
            ;;
            'cp')
                [[ "$args" =~ ':into' ]] && { set -- ${args#*:into};    args=${args//:into*/"$2 $1:$2"};    }
                [[ "$args" =~ ':out' ]] && { set -- ${args#*:outof};  args=${args//:outof*/"$1:$2 $2"};   }
    
            ;;
            'exec')
                [ $# == 1 ] && args=${args//$@/"-it $@ bash"}
            ;;
            'inspect')
                args=${args//':pid'/'--format "{{.Name}}: {{.State.Pid}}"'}
                args=${args//':ip'/'--format "{{.Name}}: {{.NetworkSettings.IPAddress}}"'}
                args=${args//':all'/'$(docker ps -q)'}
            ;;
            'run')
                args=${args//':restart'/"--restart=always"}
                args=${args//':once'/'--rm -it'}
            ;;
        esac
        
        echo docker $args
        eval "docker $args"
    
        unalias $FUNCNAME
    }
  • 相关阅读:
    (Vedctor经典)A
    C++ map用法
    (约瑟夫应用)5.4.1 Roman Roulette
    部分题集代码
    随机生成数
    如何在AutoCAD中实现鼠标双击事件
    浅谈JS之Error对象
    自定义微信小程序swiper轮播图面板指示点的样式
    物理像素与逻辑像素相关概念
    微信小程序中padding-right和margin-right无效
  • 原文地址:https://www.cnblogs.com/zbseoag/p/14054501.html
Copyright © 2011-2022 走看看