docker commands

Ting

1. 建置 Docker 映像檔

1
docker build -t dynamic-frontend .

2. 運行 Docker 容器

1
docker run -d -p 3004:3000 --name dynamic-frontend-container dynamic-frontend

3. 完整建置和運行流程

1
2
3
4
5
6
7
8
# 建置映像檔
docker build -t dynamic-frontend .

# 運行容器(背景執行)
docker run -d -p 3004:3000 --name dynamic-frontend-container dynamic-frontend

# 或運行容器(前景執行,可看到 log)
docker run -p 3004:3000 --name dynamic-frontend-container dynamic-frontend

針對專案的快速指令

重新建置和運行(推薦的完整流程)

1
2
3
4
5
6
7
8
9
# 停止並刪除舊容器
docker stop dynamic-frontend-container
docker rm dynamic-frontend-container

# 重新建置映像檔
docker build -t dynamic-frontend .

# 運行新容器
docker run -d -p 3004:3000 --name dynamic-frontend-container dynamic-frontend

查看運行狀態

1
2
3
4
5
# 查看容器狀態
docker ps

# 查看容器 log
docker logs -f dynamic-frontend-container

這樣你就可以透過瀏覽器訪問 http://localhost:3004 來查看你的前端應用程式了!

常用 Docker 指令表格

指令 指令說明
基本建置與運行
docker build -t <映像檔名稱> . 根據當前目錄的 Dockerfile 建置映像檔
docker build --no-cache -t <映像檔名稱> . 不使用快取重新建置映像檔
docker run -d -p <主機埠>:<容器埠> --name <容器名稱> <映像檔名稱> 在背景運行容器並設定埠號對應
docker run -p <主機埠>:<容器埠> <映像檔名稱> 在前景運行容器(可看到即時 log)
docker run -it <映像檔名稱> /bin/sh 互動模式運行容器並進入 shell
docker run --rm <映像檔名稱> 運行容器,停止後自動刪除
容器管理
docker ps 列出正在運行的容器
docker ps -a 列出所有容器(包含已停止的)
docker stop <容器名稱或ID> 停止指定容器
docker start <容器名稱或ID> 啟動已停止的容器
docker restart <容器名稱或ID> 重新啟動容器
docker rm <容器名稱或ID> 刪除容器(需先停止)
docker rm -f <容器名稱或ID> 強制刪除容器(可刪除運行中的容器)
映像檔管理
docker images 列出所有映像檔
docker rmi <映像檔名稱或ID> 刪除映像檔
docker rmi -f <映像檔名稱或ID> 強制刪除映像檔
docker pull <映像檔名稱> 從 Docker Hub 下載映像檔
docker push <映像檔名稱> 推送映像檔到 Docker Hub
容器監控與除錯
docker logs <容器名稱或ID> 查看容器的 log
docker logs -f <容器名稱或ID> 即時跟蹤容器的 log
docker exec -it <容器名稱或ID> /bin/sh 進入容器的 shell 環境
docker exec <容器名稱或ID> <指令> 在容器中執行指定指令
docker inspect <容器名稱或ID> 查看容器詳細資訊
docker stats 顯示所有容器資源使用狀況
檔案操作
docker cp <本地路徑> <容器名稱>:<容器路徑> 複製檔案從本地到容器
docker cp <容器名稱>:<容器路徑> <本地路徑> 複製檔案從容器到本地
Docker Compose
docker-compose up 啟動 docker-compose 定義的服務
docker-compose up -d 在背景啟動 docker-compose 服務
docker-compose down 停止並刪除 docker-compose 服務
docker-compose logs 查看 docker-compose 服務的 log
系統清理
docker system prune 清理未使用的容器、網路、映像檔
docker system prune -a 清理所有未使用的資源(包含未標記的映像檔)
docker container prune 清理所有停止的容器
docker image prune 刪除懸空的映像檔

這個表格包含了最常用的 Docker 指令,按照功能分類,方便查找和學習使用。

Comments