這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
Docker 使用中的一些最佳實務
本文將記錄:
- 在使用 Docker 的過程中整理出來的最佳實務。
- 其他 Docker 使用者發布的(可能會是翻譯過來的,全部附帶原始連結)經過驗證的最佳實務。
所以,本文將長期更新。
Docker 安裝相關
如果安裝完成後使用 docker 時出現下面的錯誤:
> Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
參考這裡的內容,我們需要執行下面的命令來安裝 apparmor:
sudo apt-get install apparmor
Docker 使用相關
- 使用 Bash Aliases 簡化 Docker 使用命令,靈感來自於一篇很好的文章(發布這篇文章的網站 docker.cn 也是很好的 docker 資來源站點),我做了擴充:
將下面的內容添加到 $HOME/.bash_aliases 中:
# Show all available docker related aliases.alias dockeraliases='printf "\nBelow are all pre-defined docker maintainance aliases:\n\ndkka | dockerkillall\tKill all running containers\ndksa | dockerstopall\tStop all running containers\ndkrc | dockerremovec\tRemove all stopped containers\ndkri | dockerremovei\tRemove all untagged images\ndkra | dockerremovea\tRemove all stopped containers and untagged images\n\n"'alias dkas='printf "\nBelow are all pre-defined docker maintainance aliases:\n\ndkka | dockerkillall\tKill all running containers\ndksa | dockerstopall\tStop all running containers\ndkrc | dockerremovec\tRemove all stopped containers\ndkri | dockerremovei\tRemove all untagged images\ndkra | dockerremovea\tRemove all stopped containers and untagged images\n\n"' # Kill all running containers.alias dockerkillall='printf "\n>>> Killing all running containers\n\n" && docker kill $(docker ps -q) && printf "\n"'alias dkka='printf "\n>>> Killing all running containers\n\n" && docker kill $(docker ps -q) && printf "\n"' # Stop all running containers.alias dockerstopall='printf "\n>>> Stopping all running containers\n\n" && docker stop $(docker ps -q) && printf "\n"'alias dksa='printf "\n>>> Stopping all running containers\n\n" && docker stop $(docker ps -q) && printf "\n"' # Remove all stopped containers.alias dockerremovec='printf "\n>>> Removing stopped containers\n\n" && docker rm $(docker ps -a -q) && printf "\n"'alias dkrc='printf "\n>>> Removing stopped containers\n\n" && docker rm $(docker ps -a -q) && printf "\n"' # Remove all untagged images.alias dockerremovei='printf "\n>>> Removing untagged images\n\n" && docker rmi $(docker images -q -f dangling=true) && printf "\n"'alias dkri='printf "\n>>> Removing untagged images\n\n" && docker rmi $(docker images -q -f dangling=true) && printf "\n"' # Remove all stopped containers and untagged images.alias dockerremovea='dockerremovec || true && dockerremovei'alias dkra='dockerremovec || true && dockerremovei'
然後,在命令列中執行 “source ~/.bash_aliases” 就可以使用這些別名了,比如:
$ dkasBelow are all pre-defined docker maintainance aliases:dkka | dockerkillall Kill all running containersdksa | dockerstopall Stop all running containersdkrc | dockerremovec Remove all stopped containersdkri | dockerremovei Remove all untagged imagesdkra | dockerremovea Remove all stopped containers and untagged images
-- EOF --
- 爬樓梯和斐波拉契數列→
- ← Ubuntu 14.04 基於最新的 openssl 編譯 curl
聲明: 本文採用 BY-NC-SA 協議進行授權. 轉載請註明轉自: Docker 使用中的一些最佳實務