7.1 用於操作容器的命令
Docker CLI (Command Line Interface),就是命令列介面。在這裡面可以輸入命令,來管理容器、image、network 和 volume。雖然很多事情可以用更直觀的 Docker Desktop 視覺化介面完成,但掌握基本的 Docker CLI 命令可以讓你更高效地使用 Docker,充分發揮它的功能。在這堂課裡,我們會介紹一些 Docker 的關鍵命令,幫助大家入門使用。
以下的表格列出了基本命令清單:
| 命令 | 說明 |
|---|---|
| docker run | 啟動新的容器 |
| docker ps | 列出正在運行的容器 |
| docker stop | 停止正在運行的容器 |
| docker start | 啟動已停止的容器 |
| docker restart | 重啟容器 |
| docker rm | 刪除已停止的容器 |
| docker logs | 查看容器日誌 |
| docker exec | 在容器內執行命令 |
1. 啟動新的容器 (docker run):
這個命令會加載 nginx image 並在後台運行 (-d),並給容器命名為 my_container。
docker run -d --name my_container nginx
2. 列出正在運行的容器 (docker ps):
顯示所有正在運行的容器清單。使用 -a 標誌可以查看包括已停止容器在內的所有容器。
docker ps
3. 停止容器 (docker stop):
停止名為 my_container 的容器。
docker stop my_container
4. 啟動已停止的容器 (docker start):
重新啟動之前已停止的容器。
docker start my_container
5. 重啟容器 (docker restart):
停止後立即重啟容器。
docker restart my_container
6. 刪除容器 (docker rm):
刪除已停止的容器。在刪除之前需要先停止容器。
docker rm my_container
7. 查看容器日誌 (docker logs):
輸出容器的日誌,方便除錯和監控。
docker logs my_container
8. 在容器內執行命令 (docker exec):
在正在運行的容器內打開交互式終端。
docker exec -it my_container /bin/bash
7.2 操作映像的命令
主要命令列表如下表所示:
| 命令 | 描述 |
|---|---|
| docker pull | 從 Docker Hub 載入映像 |
| docker build | 從 Dockerfile 構建映像 |
| docker images | 顯示本地映像列表 |
| docker rmi | 刪除映像 |
| docker tag | 為映像設定新標籤 |
1. 載入映像 (docker pull):
從 Docker Hub 載入標籤為 latest 的 nginx 映像。
docker pull nginx:latest
2. 構建映像 (docker build):
從當前目錄的 Dockerfile 構建新映像(用點符號標示),並賦予它標籤 my_image。
docker build -t my_image .
3. 查看本地映像列表 (docker images):
顯示所有本地存儲的映像列表。
docker images
4. 刪除映像 (docker rmi):
刪除標籤為 my_image 的映像。請確保該映像未被正在執行的容器使用。
docker rmi my_image
5. 為映像設定新標籤 (docker tag):
為映像 my_image 設定標籤和名稱為 my_repo/my_image:latest,方便版本管理。
docker tag my_image my_repo/my_image:latest
7.3 網路操作指令
基本指令清單如下表所示:
| 指令 | 描述 |
|---|---|
| docker network ls | 列出所有的 Docker 網路 |
| docker network create | 創建新網路 |
| docker network inspect | 查看網路詳細資訊 |
| docker network connect | 將容器連接到網路 |
| docker network disconnect | 將容器從網路中斷連接 |
1. 列出所有網路 (docker network ls):
列出所有可用的 Docker 網路。
docker network ls
2. 創建新網路 (docker network create):
創建一個名為 my_network 的新網路。
docker network create my_network
3. 查看網路詳細資訊 (docker network inspect):
提供網路 my_network 的詳細資訊,包括已連接的容器。
docker network inspect my_network
4. 將容器連接到網路 (docker network connect):
將容器 my_container 連接到網路 my_network。
docker network connect my_network my_container
5. 將容器從網路中斷連接 (docker network disconnect):
將容器 my_container 從網路 my_network 中斷連接。
docker network disconnect my_network my_container
7.4 操作 Volumes 的指令
以下是指令的對照表:
| 指令 | 描述 |
|---|---|
| docker volume ls | 列出所有 Docker 的 Volumes |
| docker volume create | 創建新的 Volume |
| docker volume inspect | 查看 Volume 的詳細資訊 |
| docker volume rm | 刪除 Volume |
1. 列出所有的 Volumes (docker volume ls):
列出 Docker 中已創建的所有 Volumes。
docker volume ls
2. 創建新的 Volume (docker volume create):
創建一個名為 my_volume 的新 Volume。
docker volume create my_volume
3. 查看 Volume 的詳細資訊 (docker volume inspect):
提供關於 my_volume 的詳細資訊,包括其位置和 driver。
docker volume inspect my_volume
4. 刪除 Volume (docker volume rm):
刪除名為 my_volume 的 Volume。在刪除之前,請確保該 Volume 沒有被任何容器使用。
docker volume rm my_volume
GO TO FULL VERSION