iT邦幫忙

2021 iThome 鐵人賽

DAY 8
0
自我挑戰組

DevOps的下克上之旅( ° ∀ ° )ノ゙系列 第 8

Day 8 : Docker 基本操作 Image 篇

Docker 基本操作

簡單講解一下Docker的概念,最重要的是兩個地方: Image,Container。如果熟悉物件導向,可以把Image想像成Class而Container就是Image產生的Object。關係如下圖。
https://ithelp.ithome.com.tw/upload/images/20210910/201190441dGDIPJgVc.png

開啟docker後(如果你是windows需要先打開Docker Desktop),進入cmd

  • docker images 查看目前系統裡所擁有的image
  • docker rmi <image id> 刪除image

https://ithelp.ithome.com.tw/upload/images/20210910/2011904441YGX96sEh.png
查看image可以看到image的名稱(Repository)、image id、大小....等資訊。

該如何建立新的image呢? 可以看到第一個圖,有四種路徑建立新的image

  1. image pull 從遠端倉庫拉取,可以是公用(Docker HUB)或是私有(公司內私人HUB)
  2. Dockerfile Build 寫dockerfile文件,自定義屬於你的image
  3. tar load load本地tar檔,建立image。 (tar檔為其他人image保存起來的檔案)
  4. container commit 將container轉換成一個新的image

下面大概講解一下:

Image Pull

可以從網路上的公有倉庫或是私有倉庫拉取,世界最大的Docker HUB 在Docker HUB 進入後可以看栩栩多多的images向你招手。舉一個範例,假如我們想要建立一個網頁,那可以來拉apache server

  • docker pull <imageName>:<tag>
    舉例,apache
  • docker pull httpd:2.4

之後便能看到一個新的名為httpd的images
https://ithelp.ithome.com.tw/upload/images/20210910/2011904453YosZd9M1.png

Dockerfile Build

之後詳細拉出來講解

Tar Load

在一些資安做的比較紮實的公司,可能無法連結到外網的Docker Hub。Image可以保存為tar檔,方便他人在本地端load。

  • docker save -o <tarName.tar> <ImageName> 保存Image成tar檔
  • docker load -i <tarName.tar> 將tar檔變成一個新的Image

https://ithelp.ithome.com.tw/upload/images/20210910/20119044Pb9vQ1f2yk.png

Container Commit

之後跟著container章節一起講


上一篇
Day 7: Docker 介紹與安裝
下一篇
Day 9 : Docker 基本操作 Container 篇
系列文
DevOps的下克上之旅( ° ∀ ° )ノ゙30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言