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章节一起讲


<<:  DAY10 资料前处理-资料编码、资料切割

>>:  多台电脑收取相同帐号邮件问题

[Day4]-基本串列(list)

串列基本定义 串列可以储存不同的资料型态,如:整数、字串、浮点数,基本格式如下: List = [...

Day08,先介绍一下预备的家中环境

正文 动手做之前,今天先来简单介绍一下目前有限的家中环境规划,大概如图。 图片产自Draw.io 因...

[Day 20] 资料产品与 DataOps 价值

资料可以是资产、也可以是负债。 当组织积累了太多无用、甚至错误的资料时,资料不但不能提供价值,反而需...

D15 - 那个圆圆的东西 - OOP 物件导向程序设计

前言 在查询 MDN 语法关於 string、array、object 的内建方法时,有没有发现开头...

D29 - 如何打包 Apps Script 的程序码?(二)包成 HTML 网页与或 API

今日的目标 要怎麽将我们的 GAS 成果打包成别人可以使用的版本?我们已经学了快一个月的 GAS 使...