這邊簡單操作一次 docker run 與 docker start 有什麼特別差異。
準備工具
開始前,兩套工具可以準備,若不使用Desktop也能操作。
- Docker Desktop : https://www.docker.com/products/docker-desktop/
- Cmd / terminal
Images 映像檔
Images 作為映像檔,基底需要Containers 來執行。使用image 可以透過 docker search
查詢image name。
Search 搜尋
搜尋 : hello-world 。內容內會有很多相關的hello-world,可以依據需求選擇需要的名稱執行、輸入。
建立 Image - Hello World
簡單敘述 Docker 創建方式。如果Docker內容已經有存在Hello World 是不會再產生的二個Image (Hello World) ,從下圖可以得到結果。
執行方式
1 | docker run hello-world |
Docker Desktop - Image / Containers
從Docker Desktop 可以看得出來,只要執行 docker run hello-world
Containers 會不斷的產生出來,當中結論是
- Image初始化會產生 SHA256
- 執行 docker run 同時會新增 Containers
Containers 容器
清除多餘的 container
現在我們先把Docker 裡面的 Container清理。清理方式以下兩行指令
1 | docker rm [ContainerID] |
只執行Container
執行方式如下。下方的 -i -t
意思是需要Container互動需要加入的參數。
如果執行這個只需要使用暫停 Container。
1 | docker start -i [ContainerID] |
暫停 Container
執行方式如下。如果執行這個只需要使用暫停 Container
1 | docker stop [ContainerID] |
結論
從執行下來 docker run 很貼心把Image 、Container 加入進去,如果需要個別方式執行需要透過以下順序
- pull (抓下 images)
- create (創建 container)
- start (執行 container)
如果直接使用docker run 可能會遇到 contrainer 無法管理的問題,後續會在針對上面三個指令做敘述。
docker run = docker pull + docker create + docker start
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 John Conte!
評論
DisqusGitalk