############################################################################ # # # ------- Useful Docker Aliases -------- # # # # # Installation : # # copy/paste these lines into your .bashrc or .zshrc file or just # # type the following in your current shell to try it out: # # wget -O - https://gist.github.com/jgrodziski/9ed4a17709baad10dbcd4530b60dfcbb/raw/d84ef1741c59e7ab07fb055a70df1830584c6c18/docker-aliases.sh | bash # # # # Usage: # # daws : aws cli in docker with # # dc : docker-compose # # dcu : docker-compose up -d # # dcd : docker-compose down # # dcr : docker-compose run # # dex : execute a bash shell inside the RUNNING # # di : docker inspect # # dim : docker images # # dip : IP addresses of all running containers # # dl : docker logs -f # # dnames : names of all running containers # # dps : docker ps # # dpsa : docker ps -a # # drmc : remove all exited containers # # drmid : remove all dangling images # # drun : execute a bash shell in NEW container from # # dsr : stop then remove # # # ############################################################################ function dnames-fn { for ID in `docker ps | awk '{print $1}' | grep -v 'CONTAINER'` do docker inspect $ID | grep Name | head -1 | awk '{print $2}' | sed 's/,//g' | sed 's%/%%g' | sed 's/"//g' done } function dip-fn { echo "IP addresses of all named running containers" for DOC in `dnames-fn` do IP=`docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}} {{end}}' "$DOC"` OUT+=$DOC'\t'$IP'\n' done echo -e $OUT | column -t unset OUT } function dex-fn { docker exec -it $1 ${2:-bash} } function di-fn { docker inspect $1 } function dl-fn { docker logs -f $1 } function drun-fn { docker run -it $1 $2 } function dcr-fn { docker-compose run $@ } function dsr-fn { docker stop $1;docker rm $1 } function drmc-fn { docker rm $(docker ps --all -q -f status=exited) } function drmid-fn { imgs=$(docker images -q -f dangling=true) [ ! -z "$imgs" ] && docker rmi "$imgs" || echo "no dangling images." } # in order to do things like dex $(dlab label) sh function dlab { docker ps --filter="label=$1" --format="{{.ID}}" } function dc-fn { docker-compose $* } function d-aws-cli-fn { docker run \ -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ -e AWS_DEFAULT_REGION=$AWS_DEFAULT_REGION \ -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ amazon/aws-cli:latest $1 $2 $3 } alias daws=d-aws-cli-fn alias dc=dc-fn alias dcu="docker-compose up -d" alias dcd="docker-compose down" alias dcr=dcr-fn alias dex=dex-fn alias di=di-fn alias dim="docker images" alias dip=dip-fn alias dl=dl-fn alias dnames=dnames-fn alias dps="docker ps" alias dpsa="docker ps -a" alias drmc=drmc-fn alias drmid=drmid-fn alias drun=drun-fn alias dsp="docker system prune --all" alias dsr=dsr-fn