# Docker Image 指令
### 主講人:黃夙賢
---
## Docker指令

---
## Docker指令概覽
- <font color=red>docker image</font>
- docker container
- docker volume
- docker network
---
## Docker Image
- docker images (或者docker image ls,顯示目前本機中有多少映像檔)
- docker pull busybox (將雲端主機上的busybox映像檔下載回本機)
- docker search --filter=stars=20 mysql (找出20星等以上的mysql映象檔)
- docker tag busybox bzbox (設定映像檔標籤)
- docker image rm bzbox (移除bzbox映像檔)
---
## Docker Images
- docker images (或者docker image ls,顯示目前本機中有多少映像檔)
```
docker images
```

---
## Docker Pull
- docker pull \<image\>(將雲端主機上的映像檔下載回本機)
```
docker pull busybox
docker images
```

---
## Docker Image History
- 列出一個映像檔的創建歷史,從新到舊,沒有Dockerfile時很好用
```
docker image history busybox
```

---
## Docker Image Save
- docker image save -o \<tar file\> \<image\>
- 將映像檔存入本機的tar檔案,不想用公開映像檔又沒自己的registry時很好用,可以用來轉移,備份等,通常配合load使用
```
docker image save -o busybox.tar busybox:latest
```

---
## Docker Image Import
- docker image import \<tar file\> \<image\>
- 將tar載入至本機映像檔中,配合save使用,如果沒有tag就會變成無名的映像檔
```
docker image prune (刪除所有未用的image,確定接下來的操作可以正確)
docker images
docker image import busybox.tar
docker images
```

---
## Docker Search
- docker search \<keyword\>
- 在docker hub上搜尋映像檔
```
docker search --filter=stars=20 mysql (找出20星等以上的mysql映象檔)
```

---
## Docker Image Rm
- docker image rm \<image\>
- 移除映像檔
```
docker pull busybox
docker images
docker image rm busybox
docker images
docker image rm 2d (也可利用image ID來刪除,範例的image ID開頭是2d)
docker images
```
---

---
## Docker Tag
- docker tag \<image\>
- 設定映像檔標籤
```
docker images
docker pull busybox
docker images
docker tag busybox bzbox
docker images
```

---
## Docker Image Inspect
- docker image inspect \<image\>
- 檢視映像檔的json格式詳情
```
docker image inspect busybox
```

---
## Docker Push
- docker push \<username/image\>
- 將映像檔上傳至docker hub,上傳後只能從網頁上刪除
- 請先至docker hub註冊帳號
```
docker login (先登入自己的帳號,老師的帳號是suhsien)
docker images
docker image pull busybox
docker images
docker image tag busybox xxxxx/busybox (xxxxx請輸入自己的帳號名稱)
docker images
docker image push xxxxx/busybox (xxxxx請輸入自己的帳號名稱)
```
---

---
- 在docker hub登入後,檢視自己上傳的image是否成功

---
{"metaMigratedAt":"2023-06-17T18:26:42.942Z","metaMigratedFrom":"YAML","title":"Docker Image 指令","breaks":true,"contributors":"[{\"id\":\"ef0225b9-6c2a-4012-82c9-fa1031d2c4db\",\"add\":2750,\"del\":9}]"}