久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

Docker構建鏡像的三種方式(Dockerfile初步)

前言

?上篇講述了有關docker網絡通信部分原理以及案例,本篇文章將講述有關docker構建鏡像的具體操作。本文將從docker構建鏡像的方式入手,逐一講述。

  • 揭開Docker的面紗 – 基礎理論梳理和安裝流程演示  http://www.wangcai868.com/Linux/2020-04/163003.htm
  • Docker基礎命令詳解 – 鏡像及容器操作  http://www.wangcai868.com/Linux/2020-04/163005.htm
  • 深入理解Docker的硬件資源控制與驗證  http://www.wangcai868.com/Linux/2020-04/163006.htm
  • Docker網絡模式與配置Docker自定義網絡(bridge模式)  http://www.wangcai868.com/Linux/2020-04/163007.htm

構建鏡像的三種方式:

  • Dockerfile
  • 基于已有的鏡像容器進行創建
  • 基于本地模板創建

首先,我們為什么需要構建docker鏡像?只有明白了這個問題,我們才知道構建docker鏡像的意義或者說價值是什么。

答案其實很簡單:docker鏡像是docker的三大核心之一,也是應用發布的標準格式,一個完整的docker鏡像可以支持一個docker容器的運行。我們在容器進行相關的操作,例如安裝應用服務,假設某個業務的需求恰好需要方才安裝配置好的應用服務,我們就可以將環境以及搭建的服務生成新的鏡像提供出去。

下面我們來具體看看這三種方式的構建手法。

基于Dockerfile構建鏡像

什么是Dockerfile?

? Dockerfile構建鏡像的方式就目前而言是使用最為廣泛的,這是一種可以自動化生成鏡像的一種方式,就類似shell腳本一樣,一個腳本執行完就可以將一個服務安裝配置好,支持正常使用了。Dockerfile也是一樣,也是由一組指令組成的文件,其中每條指令對應Linux中的一條命令,Docker程序將通過讀取Dockerfile中的指令最終生成鏡像。

? Dockerfile可以認為是一個普通文件,其結構大致分為四個部分:基礎鏡像信息、維護者信息、鏡像操作指令以及容器啟動時執行指令。并且在Dockerfile中支持以“#”開頭的注釋。

Docker鏡像的分層

  1. Dockerfile中的每個指令都會創建一個新的鏡像層
  2. 鏡像層將被緩存和復用
  3. 當Dockerfile的指令被修改了,復制的文件變化了,或者構建鏡像時指定的變量不同了,對應的鏡像層緩存就會失效
  4. 某一層的鏡像緩存失效后,其之后的鏡像層緩存都會隨之失效
  5. 鏡像層是不可變的,如果在某一層中添加一個文件,然后在下一層中刪除則鏡像中依然會包含該文件

Dockerfile編寫規則

Dockerfile中是基于其指令進行編寫的,其規則可以參考下面的表格,當然,在編寫Dockerfile時,其格式是需要嚴格遵循的:

除注釋外,第一行必須使用FROM指令所基于的鏡像名稱;之后使用MAINTAINER指明維護信息;然后就是一系列鏡像操作指令,如RUN、 ADD等;最后便是CMD指令來指定啟動容器時要運行的命令操作。其中RUN指令可以使用多條,CMD只有最后一條可以生效!

Docker構建鏡像的三種方式(Dockerfile初步)

? 本文主要是講述docker構建鏡像的三種方式,Dockerfile的構建具體過程筆者將在之后的文章中通過各種實際案例來講述演示,本文暫時給出一個Dockerfile文件的例子給大家參考。

[root@localhost ~]# cat Dockerfile  #務必先指明基于的基礎鏡像  FORM CentOS:7  #維護該鏡像的用戶信息(自定義)  MAINTAINER lokott@123.com  #鏡像操作命令  RUN yum -y update  RUN yum -y install openssh-server  RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config  RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key  RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key  #開啟端口  EXPOSE 22  #啟動容器時執行指令  CMD ["/usr/sbin/sshd","-D"]  

基于已有鏡像構建鏡像

? 上述的Dockerfile的構建鏡像的方式是自動化進行的,那么手動構建的方式就是剩下的兩種了。

基于已有的鏡像構建主要是通過docker commit 命令來構建新的鏡像,其實質就是將一個容器里面運行的程序以及該程序的運行環境打包起來生成新的鏡像。

docker commit的語法規則及可選項介紹

Usage:  docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]    Create a new image from a container's changes    Options:    -a, --author string    Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")#作者信息    -c, --change list      Apply Dockerfile instruction to the created image    -m, --message string   Commit message #說明信息    -p, --pause            Pause container during commit (default true) #生成過程中停止容器的運行  

案例:基于原有鏡像構建新的鏡像(看實質原理)

1.創建一個容器

[root@localhost ~]# docker create -it nginx /bin/bash  Unable to find image 'nginx:latest' locally  latest: Pulling from library/nginx  123275d6e508: Pull complete   6cd6a943ce27: Pull complete   a50b5ac4a7fb: Pull complete   Digest: sha256:d81f010955749350ef31a119fb94b180fde8b2f157da351ff5667ae037968b28  Status: Downloaded newer image for nginx:latest  fb9a4cdb1b79a5e4d82177afdbe8c1f1956888733979f15ae562e0013f4e0f29    [root@localhost ~]# docker ps -a  CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES  fb9a4cdb1b79        nginx               "/bin/bash"         17 seconds ago      Created                                 vibrant_heisenberg  

2.基于該容器使用docker commit 命令創建新的鏡像

[root@localhost ~]# docker commit -m new_image -a lokott fb9a4cdb1b79 lokott:demo  sha256:bb848fe7eb3655a07e6577e05bc04ab6404549a24c49fa5d3161ceb767a048f2  [root@localhost ~]# docker images | grep lokott  lokott              demo                bb848fe7eb36        26 seconds ago           127MB  

基于本地模板構建鏡像

該方式是通過導入操作系統模板文件生成鏡像,模板可以從OPENVZ開源項目下載,下載地址為:http://openvz.org/Download/template/precreated

下面直接給出例子——將debian模板壓縮包導入為本地鏡像

[root@localhost ~]# ls  anaconda-ks.cfg                docker.sh             公共  視頻  文檔  音樂  debian-7.0-x86-minimal.tar.gz  initial-setup-ks.cfg  模板  圖片  下載  桌面  [root@localhost ~]# cat debian-7.0-x86-minimal.tar.gz | docker import - lokott:new  sha256:df2ce16066413515db7db8a76243fcaebbd904d10304ab467fefde852dddd9a8  [root@localhost ~]# docker images | grep new  lokott              new                 df2ce1606641        14 seconds ago           215MB  

本文講述了docker構建鏡像的三種方式,最重要的是上述的第一種方式使用的非常多。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
国产欧美日韩在线一区二区| 日韩精品午夜| 欧美日韩国产高清| 日韩午夜av在线| 免费在线观看不卡| 日本综合视频| 久久这里只有精品一区二区| 最新中文字幕在线播放| 999视频精品| 视频一区视频二区中文| 奇米色欧美一区二区三区| 卡一卡二国产精品| 亚洲成人国产| 蜜臀av一区二区在线免费观看| 日韩精品免费视频人成| 亚洲91在线| 精品黄色一级片| 免费精品国产的网站免费观看| 蜜臀国产一区二区三区在线播放| 国产乱码精品一区二区三区四区 | 欧美黄色精品| 一区二区三区四区日本视频| 黄色亚洲精品| 国产精品欧美一区二区三区不卡| 久久久久久夜| 免费成人av在线播放| 久久香蕉网站| 婷婷综合五月| 日韩精品国产欧美| 在线手机中文字幕| 日韩中文字幕无砖| 久久毛片亚洲| 日韩不卡在线观看日韩不卡视频 | 麻豆国产91在线播放| 久久中文视频| 国产精品伦一区二区| 亚洲高清不卡| 久久99久久久精品欧美| 婷婷色综合网| 卡一卡二国产精品| 日本欧洲一区二区| 日韩1区2区| 亚洲开心激情| 精品欧美激情在线观看| 欧美黑人做爰爽爽爽| 日韩中文字幕区一区有砖一区| 麻豆成人在线观看| 午夜亚洲福利| 亚洲美洲欧洲综合国产一区| 国产盗摄——sm在线视频| 日韩高清欧美激情| 天堂网在线观看国产精品| 久久中文精品| 欧美亚洲一区二区三区| 久久天堂成人| 欧美激情91| 伊人久久一区| 免费成人网www| 成人亚洲欧美| 精品国产一区二区三区av片| 日韩av不卡一区二区| 99pao成人国产永久免费视频 | 亚洲日韩视频| 日韩一级欧洲| 亚洲一级二级| 免费在线小视频| 精品视频在线观看网站| 日韩福利在线观看| 日韩午夜电影| 精品欧美激情在线观看| 蜜桃av在线播放| 日韩a一区二区| 久久99国产精品视频| 国产精品一级在线观看| 日本不卡视频在线| 日韩精品一二三| 亚洲欧美日韩视频二区| 欧美日韩国产高清| 欧美日韩一区二区综合| av高清不卡| 国产一区二区三区国产精品| 国产精品久一| 国产精品一区二区免费福利视频| 日韩精品久久理论片| 亚洲精品女人| 日本欧美在线| 国产精品欧美在线观看| 国产高清日韩| 久久99久久人婷婷精品综合| 国产精品激情电影| 国产高清亚洲| 精品国产麻豆| 91亚洲国产高清| 天堂√中文最新版在线| 日韩天堂在线| 亚洲精品一区二区在线看| 蜜臀91精品国产高清在线观看| 好吊日精品视频| 国产农村妇女精品一二区| 欧美专区一区二区三区| 亚洲精品九九| 国产精品毛片视频| 国产一区二区三区亚洲综合| 亚洲天堂av影院| 亚洲无线一线二线三线区别av| 香蕉精品久久| 蜜臀av一区二区三区| 日韩av不卡在线观看| 欧美精品91| 久久精品青草| 蜜桃av一区二区| 国产亚洲人成a在线v网站| 精品欧美日韩精品| 欧美香蕉视频| 另类亚洲自拍| 久久国产精品美女| 久久国产日本精品| 日韩精品一级中文字幕精品视频免费观看 | 国产精品日韩精品在线播放| 欧美国产小视频| 91精品成人| 午夜亚洲福利| 国产91在线播放精品| 日韩精品中文字幕第1页| 午夜久久福利| 国产精品流白浆在线观看| 精品亚洲美女网站| 免费看欧美美女黄的网站| 欧美精品影院| 天堂日韩电影| 日本久久二区| 国产一区二区三区四区五区| 婷婷色综合网| 国产精品传媒麻豆hd| 久久青青视频| 亚洲人成网77777色在线播放| 国产精品一级在线观看| 久久精品国产亚洲夜色av网站| 中文日韩在线| 你懂的网址国产 欧美| 亚洲天堂成人| 国产精品一区二区美女视频免费看 | 国产欧美日韩精品高清二区综合区 | 国产精品免费看| 久久99蜜桃| 午夜久久福利| 欧美交a欧美精品喷水| 1024精品久久久久久久久| 日韩高清在线不卡| 欧美日韩精品免费观看视欧美高清免费大片 | 久久久久国产| 国产欧美日韩一区二区三区在线| 日韩不卡视频在线观看| 国产日产高清欧美一区二区三区| 久久精品成人| 免费在线亚洲欧美| 在线视频日韩| 人人香蕉久久| 欧美aaaaaa午夜精品| 综合激情五月婷婷| 久久精品国产亚洲夜色av网站| 国产精品一国产精品k频道56| 欧美日韩日本国产亚洲在线 | 免费久久99精品国产自在现线| 精品国产成人| 国产午夜久久av| 亚洲免费网址| av高清一区| 国产成人久久精品麻豆二区 | 亚洲精品影视| 午夜久久久久| 91精品久久久久久久久久不卡| 国产福利一区二区三区在线播放| 亚洲一区二区三区在线免费| 激情综合在线| 三上亚洲一区二区| 国产欧美视频在线| 日韩综合一区二区三区| 国产一级一区二区| 最新中文字幕在线播放 | 国产精品15p| 欧美日韩亚洲一区在线观看| 中文字幕av一区二区三区四区| 欧美日韩四区| 国产91一区| 中文字幕系列一区| 久久久久久色| 亚洲一区二区三区四区电影| 亚洲福利专区| 视频福利一区| 久久久夜夜夜| 中文字幕一区久| 国产精品99久久免费观看| 日韩高清电影免费| 日本免费一区二区视频| 欧美日韩网址| 国产精品香蕉| 国产精品久久久久久久久久妞妞 | 好看的亚洲午夜视频在线| 久久国产毛片|