Common Command
基本 Docker 指令教學
現在你已經成功安裝 Docker,接下來我們要學習一些基本的 Docker 指令,這些指令將幫助你管理映像檔(Image)、容器(Container),並進行基礎操作。
1. 查看 Docker 版本
確認 Docker 是否安裝成功:
docker --version
顯示結果範例:
Docker version 24.0.5, build a8a5b65
檢查 Docker 服務是否正在運行:
docker info
這會顯示 Docker 伺服器的詳細資訊,包括容器數量、映像檔數量、儲存驅動等。
2. 取得與管理 Docker 映像檔(Image)
下載映像檔
Docker 提供許多官方映像檔,你可以從 Docker Hub 下載:
docker pull <映像檔名稱>
例如下載 Nginx:
docker pull nginx
這會下載 nginx 的最新版本(latest)。
如果要下載特定版本:
docker pull nginx:1.21
查看本地端已有的映像檔
docker images
顯示範例:
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 4cdc5dd7eaad 2 weeks ago 142MB
這表示我們已下載 nginx:latest,映像檔 ID 為 4cdc5dd7eaad
。
刪除映像檔
如果想刪除一個不用的映像檔:
docker rmi <映像檔名稱或 IMAGE ID>
例如:
docker rmi nginx
如果映像檔被容器使用,則需先刪除對應的容器。
3. 操作 Docker 容器(Container)
執行容器
使用 docker run
來執行一個容器:
docker run <映像檔名稱>
例如執行 Nginx:
docker run nginx
但這樣執行的容器會馬上結束,因為 Nginx 預設為前景執行。
讓容器保持執行狀態(背景模式 -d
)
docker run -d --name mynginx nginx
-d
:背景執行(detached mode)--name mynginx
:指定容器名稱mynginx
查看目前運行的容器:
docker ps
若要查看所有容器(包含已停止的):
docker ps -a
讓容器的 Port 映射(Port Mapping -p
)
在 Docker 中,容器內部的應用程式通常會監聽某個 內部 Port(例如 Nginx 監聽 80
),但這個 Port 預設是無法從主機存取的。
如果希望主機可以存取容器內的服務,就需要使用 -p
參數來做 Port Mapping(端口映射)。
docker run -p <主機端口>:<容器端口> <映像檔>
其中:
- 主機端口(HOST_PORT):你希望在本機存取的端口
- 容器端口(CONTAINER_PORT):容器內部應用程式監聽的端口
進入執行中的容器
有時我們需要進入容器內部進行操作:
docker exec -it <容器名稱或 ID> bash