Docker 命令自動(dòng)補(bǔ)全的實(shí)現(xiàn)
不知道這個(gè)小伙伴有多久沒(méi)用過(guò) Docker 了, 突然對(duì)我說(shuō) Docker 命令怎么發(fā)生變化了
docker run ...#變成了docker container run ...
他說(shuō),本來(lái)對(duì) Docker 命令就不熟悉,這下感覺(jué)更加混亂了。其實(shí)個(gè)人看來(lái),這么變化還使得命令看著更加規(guī)整
當(dāng)在命令行直接輸入 docker 然后回車:
從圖中可以看出,Docker 將命令結(jié)構(gòu)化的劃分了兩大類,Management Commands 和 Commands,其實(shí)前者就是一級(jí)命令,后者就是子命令 (這是自 Docker 1.13 開(kāi)始的改動(dòng)),所以以后使用命令就是這樣滴:
docker <Management Command> <Sub-Command <Opts/Args>>
這樣以后我們使用命令只需要先關(guān)注 Management Commands 就可以了,那后續(xù)的子命令還是不知道怎么用,還要一點(diǎn)點(diǎn)查詢嘛?
Docker 命令自動(dòng)補(bǔ)全
為了解決這個(gè)問(wèn)題,Docker 也提供了非常完善的命令自動(dòng)補(bǔ)全功能,也就是把一切交給 Tab 鍵
Mac 安裝Docker命令自動(dòng)補(bǔ)全逐條鍵入下面命令:
brew install bash-completionsudo curl -L https://raw.githubusercontent.com/docker/compose/1.27.4/contrib/completion/bash/docker-compose -o /usr/local/etc/bash_completion.d/docker-compose
打開(kāi) ~/.bash_profile 文件,將下面內(nèi)容粘貼進(jìn)去:
if [ -f $(brew --prefix)/etc/bash_completion ]; then . $(brew --prefix)/etc/bash_completion fi
然后刷新使之生效
source ~/.bash_profile
我覺(jué)得 Zsh 更好,為什么?答案請(qǐng)看這篇:這篇 iTerm2 + Oh My Zsh 教程手把手讓你成為這條街最靚的仔
Zsh安裝Docker命令自動(dòng)補(bǔ)全如果沒(méi)有安裝 Oh-My-Zsh shell,第一步則是要先安裝它,逐條鍵入下面命令:
mkdir -p ~/.zsh/completioncurl -L https://raw.githubusercontent.com/docker/compose/1.27.4/contrib/completion/zsh/_docker-compose > ~/.zsh/completion/_docker-compose
打開(kāi) ~/.zshrc 文件,將下面內(nèi)容粘貼進(jìn)去:
fpath=(~/.zsh/completion $fpath)autoload -Uz compinit && compinit -i
比如我的 ~/.zshrc 文件內(nèi)容:
搜索該文件插件位置,更新插件內(nèi)容:
plugins=(... docker docker-compose)
順便說(shuō)一下,強(qiáng)烈建議使用 git 插件
最后刷新一下使之生效:
source ~/.zshrc
自動(dòng)補(bǔ)全功能就可以瘋狂利用你的 Tab 鍵,這比查閱文檔要更加快捷,來(lái)看看效果:
到此這篇關(guān)于Docker 命令自動(dòng)補(bǔ)全的實(shí)現(xiàn) 的文章就介紹到這了,更多相關(guān)Docker 命令自動(dòng)補(bǔ)全內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. PHP正則表達(dá)式函數(shù)preg_replace用法實(shí)例分析2. 一個(gè) 2 年 Android 開(kāi)發(fā)者的 18 條忠告3. vue使用moment如何將時(shí)間戳轉(zhuǎn)為標(biāo)準(zhǔn)日期時(shí)間格式4. js select支持手動(dòng)輸入功能實(shí)現(xiàn)代碼5. Android 實(shí)現(xiàn)徹底退出自己APP 并殺掉所有相關(guān)的進(jìn)程6. Android studio 解決logcat無(wú)過(guò)濾工具欄的操作7. 什么是Python變量作用域8. vue-drag-chart 拖動(dòng)/縮放圖表組件的實(shí)例代碼9. Spring的異常重試框架Spring Retry簡(jiǎn)單配置操作10. Vue實(shí)現(xiàn)仿iPhone懸浮球的示例代碼
