一、常用管理命令
1. 選項
1)ls
功能:列出容器
- 常用參數:
- -a:查看所有容器包含退出的
- -q:列出所有容器ID
- -l:列出最新創建的容器狀態
- 使用技巧:
- 容器很多時使用docker ps -l可以快速找到最新創建的容器
- docker container ls是docker ps的新式寫法
- 示例:
- docker ps -a:查看所有容器
- docker ps -q:獲取所有容器ID用于批量操作
2)exec
- 功能:在運行容器中執行命令
- 兩種使用方式:
- 交互式進入容器:docker exec -it <容器ID或名稱> /bin/bash
- 免交互執行命令:docker exec <容器ID或名稱> <命令>
- 應用場景:
- 腳本中需要在容器內執行命令但不需要人工交互
- 調試時進入容器查看環境
- 示例:
- docker exec web ls:在web容器中執行ls命令
- docker exec -it web /bin/bash:進入web容器的bash shell
3)commit
- 功能:從容器創建新鏡像
- 使用場景:
- 臨時保存容器狀態
- 不熟悉Dockerfile時快速創建鏡像
- 缺點:
- 不利于后期運維管理
- 無法追溯鏡像構建過程
- 推薦使用Dockerfile替代
- 示例:
- docker commit <容器ID> <新鏡像名>
4)cp
功能:在容器和宿主機間拷貝文件/文件夾
- 使用方式:
- 宿主機→容器:docker cp <宿主機文件> <容器ID>:<容器路徑>
- 容器→宿主機:docker cp <容器ID>:<容器路徑> <宿主機文件>
- 示例:
- docker cp test.txt web:/root/:將test.txt拷貝到web容器的/root目錄
5)logs
功能:獲取容器日志
- 應用場景:
- 故障排查
- 監控服務運行狀態
- 示例:
- docker logs web:查看web容器的日志輸出
6)top
- 功能:顯示容器運行的進程
- 優勢:
- 無需進入容器即可查看進程
- 示例:
- docker top web:查看web容器中的進程
7)stats
功能:顯示容器資源使用統計
- 參數:
- --no-stream:只輸出一次統計結果
- 監控指標:
- CPU使用率
- 內存使用量/限制
- 網絡I/O
- 塊設備I/O
- 腳本應用:
- 使用awk提取特定指標值
- 示例:docker stats --no-stream | awk 'NR==2{print$3}'獲取CPU使用率
8)prune
- 功能:移除已停止的容器
- 批量清理:
- docker container prune:清理所有已停止容器
- docker rm -f$(docker ps -aq):強制刪除所有容器(包括運行中的)
- 注意事項:
- 默認不會刪除運行中的容器
- 需要加-f參數才能強制刪除運行中的容器
二、知識小結
知識點 | 核心內容 | 關鍵命令/參數 | 應用場景 |
容器列表查看 | 查看運行中的容器 | docker ps docker container ls | 基礎容器狀態檢查 |
最新容器查看 | 顯示最近創建的容器 | docker ps -l | 快速定位最新操作 |
容器詳細信息 | 查看容器完整信息 | docker inspect | 故障排查/配置檢查 |
容器交互操作 | 進入容器執行命令 | docker exec -it [容器] /bin/bash | 容器內調試 |
非交互式命令執行 | 在容器內執行單條命令 | docker exec [容器] ls / | 自動化腳本集成 |
容器提交鏡像 | 將容器保存為新鏡像 | docker commit [容器] [鏡像名] | 環境快照(不推薦) |
文件拷貝操作 | 宿主機與容器間文件傳輸 | docker cp [文件] [容器]:[路徑] | 配置文件部署 |
日志查看 | 查看容器運行日志 | docker logs [容器] | 故障排查 |
資源監控 | 查看容器資源使用情況 | docker stats docker top [容器] | 性能監控 |
端口檢查 | 查看容器暴露端口 | docker port [容器] | 網絡配置驗證 |
容器生命周期管理 | 啟動/停止/重啟容器 | docker start/stop/restart | 日常運維 |
容器清理 | 刪除已停止的容器 | docker rm $(docker ps -aq) | 系統清理 |
批量操作 | 強制刪除所有容器 | docker rm -f $(docker ps -aq) | 環境重置 |