既然已經搭建好了Docker關于基礎的指令以及使用方式我們當然要進行學習,還有一些小技巧比如批量操作鏡像加速和怎麼尋找合适的Docker-Images都是本節的内容
附上:
喵了個咪的部落格:
w-blog.cn 官方Git位址: https://github.com/moby/moby1.Docker基本操作指令
docker容器生命周期管理
- docker run 在一個新的容器執行一個指令
- docker start 開一個或者更多已經停止的容器
- docker stop 停止一個運作的容器
- docker restart 重新開始一個運作的容器
- docker kill 殺死一個運作的容器
- docker rm 删除一個或更多的容器
- docker pause 暫停一個容器的所有程序
- docker unpaunse 恢複一個容器的所有程序
docker容器操作運維
- docker ps 列出容器
- docker inspect 列出關于容器或鏡像的底層資訊
- docker top 顯示一個容器運作的程序
- docker attach 附上一個運作的容器
- docker events 得到實時的來自服務的事件
- docker log 獲得一個容器的日志
- docker wait 阻塞直到一個容器停止,然後列印它的退出代碼
- docker export 導出一個容器的檔案系統作為一個tar檔案
- docker port 列出容器映射的端口
docker版本管理
- docker commit 建立一個新的鏡像從一個容器
- docker cp 從容器複制一個檔案或目錄到本地目錄或标準輸出
- docker diff 展示一個容器檔案系統的變化
docker鏡像倉庫
- docker login 登入倉庫
- docker pull 拉取鏡像
- docker push 推送鏡像
- docker search 搜尋鏡像
docker本地鏡像管理
- docker images 列出本地的鏡像
- docker rmi 删除本地的鏡像
- docker tag 打标簽本地的鏡像
- docker build 通過Dockerfile建構本地的鏡像
- docker histroy 列出鏡像的曆史
- docker save 儲存本地的鏡像為一個tar檔案
- docker import 通過tar導入鏡像
- docker load 加載tar鏡像
docker其它指令
- docker info
- docker version
2. 小技巧
批量操作
很多時候發現可能需要清理Docker環境,但是容器挨個停止挨個删除确實太過于麻煩了,使用如下指令可以做到很快速的處理批量删除
> docker ps // 檢視所有正在運作容器
> docker stop containerId // containerId 是容器的ID
> docker ps -a // 檢視所有容器
> docker ps -a -q // 檢視所有容器ID
> docker stop $(docker ps -a -q) // stop停止所有容器
> docker rm $(docker ps -a -q) // remove删除所有容器
> docker rmi $(docker images -a -q) // 删除所有的鏡像
hub.docker
既然使用了docker,就會大量的使用别人提起處理好的環境常常我們去
https://hub.docker.com/中尋找我們需要的鏡像
搜尋你需要的鏡像
預設docker在拉取鏡像的時候就會從hub.docker中拉取,使用如下指令就可以拉取上面第一個鏡像
docker pull richarvey/nginx-php-fpm
國内鏡像倉庫和鏡像源
國内鏡像倉庫可以申請一個阿裡雲賬号直接使用它的免費Docker倉庫
對應的Docker源位址需要大家去阿裡雲容器鏡像管理中申請,擷取使用其他國内Docker源(如果不配置在後續的K8S安裝非常慢)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF
# 重新開機
sudo systemctl daemon-reload
sudo systemctl restart docker
注:筆者能力有限有說的不對的地方希望大家能夠指出,也希望多多交流!