波多野结衣 蜜桃视频,国产在线精品露脸ponn,a v麻豆成人,AV在线免费小电影

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

目錄
  • 構(gòu)建鏡像
  • commit
  • dockerFile
    • dickerFile 指令
  • 使用 dockerFile創(chuàng)建鏡像
    • 鏡像保存、加載
      • 鏡像保存
      • 加載已保存的鏡像
    • 區(qū)別
      • 總結(jié)

        構(gòu)建鏡像

        構(gòu)建鏡像的兩種方法:docker commit和docker build。

        通過(guò)這2種方式構(gòu)建出來(lái)的鏡像大小都是一樣的;那么既然這2種方式都一樣,我們應(yīng)該使用哪一種呢?

        commit

        用戶提交對(duì)容器的修改,并生成新的鏡像。

        docker commit -a="作者" -m="說(shuō)明"  -p 容器id/容器名稱 鏡像新名稱:鏡像版本
        
        # 舉例,制作當(dāng)前的tomcat容器生成鏡像
        docker commit -a="yexindong" -m="首次制作的鏡像" tomcat_1 mytomcat:1.0
        
        # 參數(shù)說(shuō)明
            -a :提交的鏡像作者;
            -c :使用Dockerfile指令來(lái)創(chuàng)建鏡像;
            -m :提交時(shí)的說(shuō)明文字;
            -p :在commit時(shí),將容器暫停。
        

        dockerFile

        特點(diǎn)

        • 每個(gè)指令都必須是大寫(xiě)
        • 執(zhí)行順序是從上到下順序執(zhí)行
        • # 表示注釋
        • 每個(gè)指令都會(huì)創(chuàng)建提交一個(gè)新的鏡層,并提交(每個(gè)指令都是一個(gè)docker commit)
        • dockerFile是面向開(kāi)發(fā)人員的;由開(kāi)發(fā)人員構(gòu)建鏡像,就需要寫(xiě)dockerFile文件,然后將鏡像交付給運(yùn)維直接部署即可;不需要運(yùn)維配置繁雜的jvm參數(shù)命令;
        • dockerFile正在逐漸稱為企業(yè)的交付標(biāo)注,所以開(kāi)發(fā)人員必須要掌握;

        dickerFile 指令

        使用dockerFile創(chuàng)建鏡像,實(shí)際上就是用腳本文件的方式創(chuàng)建;腳本內(nèi)指令如下

        • FROM:指定基礎(chǔ)鏡像(它的媽媽是誰(shuí))
        • MAINTAINER:指定作者(告訴別人,是誰(shuí)創(chuàng)造了它),一般都是姓名 + 郵箱
        • LABEL:指定標(biāo)簽信息
        • USER:設(shè)置容器運(yùn)行時(shí)的用戶
        • RUN:在build過(guò)程要運(yùn)行的命令  (在容器外運(yùn)行,也就是在宿主機(jī)運(yùn)行的命令,在這里我們可以給容器安裝一些應(yīng)用程序 yum install xxxx)
        • ADD:添加文件到鏡像中(往它肚子里放點(diǎn)東西),如果.tar.gz文件的話, 會(huì)自動(dòng)解壓
        • COPY:類似ADD,將文件拷貝到鏡像,不會(huì)解壓壓縮文件
        • ENV:設(shè)置環(huán)境變量
        • VOLUME:設(shè)置文件掛載(給它一個(gè)存放行李的地方),默認(rèn)是匿名掛載
        • EXPOSE:暴露端口,指定容器運(yùn)行時(shí)開(kāi)放的端口,運(yùn)行也需要開(kāi)放這個(gè)端口才能訪問(wèn)  docker run -d  -p 8080:8080 鏡像id (打開(kāi)一扇窗,讓風(fēng)(數(shù)據(jù))可以來(lái)去自如)
        • CMD:容器運(yùn)行時(shí)要執(zhí)行的命令(在容器內(nèi)運(yùn)行的命令),可用來(lái)運(yùn)行默認(rèn)要運(yùn)行的程序,只有最后一個(gè)CMD才會(huì)運(yùn)行,且只運(yùn)行一次
        • ENTRYPOINT:和CMD一樣,但是可以追加命令;
        • ONBIUILD:當(dāng)構(gòu)建一個(gè)被繼承dockerFile,這個(gè)時(shí)候就會(huì)運(yùn)行ONBUILD 指令,屬于觸發(fā)指令
        • WORKDIR:指定工作目錄,也就是登陸后默認(rèn)進(jìn)去的目錄;

        指令用法

        FROM

        FROM centos

        MAINTAINER

        MAINTAINER yexindong<xxx@163.com>

        USER

        指定用戶運(yùn)行,默認(rèn)使用root用戶,在docker run 中可以通過(guò) -u 選項(xiàng)來(lái)覆蓋USER指令的設(shè)置。

        如果不是內(nèi)置帳戶,則必須首先創(chuàng)建該用戶;

        USER root

        ENV

        # 環(huán)境變量可以隨便設(shè)置,MYPATH為key ,/user/local是值
        ENV MYPATH /user/local
        

        EXPOSE

        # 開(kāi)放單個(gè)端口
        EXPOSE 80
        
        # 開(kāi)放多個(gè)端口
        EXPOSE 22 80 8080 3306 8009 8090
        

        ADD

        # file 是你當(dāng)前宿主機(jī)的文件名稱
        # /root/home 是你要將file打包到鏡像的目錄
        ADD file /root/home
        

        COPY

        用法與ADD一致,區(qū)別是COPY指令不會(huì)解壓文件

        COPY  file /root/home

        CMD

        容器內(nèi)運(yùn)行命令,只能運(yùn)行一個(gè)命令

        # 第一種用法
        CMD echo 11
        # 第二種用法
        CMD ["echo","33"]
        

        ENTRYPOINT

        容器內(nèi)運(yùn)行命令,用法和CMD一致,區(qū)別是可以運(yùn)行多個(gè)命令

        # 定義多個(gè) ENTRYPOINT 就可以運(yùn)行多個(gè)命令
        ENTRYPOINT ["ls","-l"]
        ENTRYPOINT ["./start.sh"]
        ENTRYPOINT ps -ef | grep tomcat
        

        CMD 和 ENTRYPOINT 的區(qū)別

        • CMD 相同的指令只有最后一個(gè)會(huì)生效
        • ENTRYPOINT可以追加命令;

        使用 dockerFile創(chuàng)建鏡像

        那么現(xiàn)在我們就自己一個(gè)tomcat的鏡像,首先創(chuàng)建一個(gè)文件 dockerFile_1

        vim dockerFile_1

        腳本內(nèi)容如下,注意,腳本內(nèi)的關(guān)鍵字必須是大寫(xiě)的,VOLUME 是匿名掛載的

        FROM centos
        
        RUN yum install net-tools.x86_64 -y
        RUN yum -y install vim
        RUN yum install vi -y
        VOLUME ["/data/tomcat_file_1","/data/tomcat_file_2"]
        EXPOSE 8080
        # 打印當(dāng)前時(shí)間
        CMD date
        WORKDIR /root
        
        

        創(chuàng)建好腳本文件后,就可以就行構(gòu)建了,注意后面那個(gè)點(diǎn)

        docker build -f dockerFile_1 -t xindong_centos_3:1.1 .
        
        # 說(shuō)明
         -f 需要構(gòu)建的腳本文件
         -t tag的縮寫(xiě),構(gòu)建后的鏡像名稱:版本號(hào)
        

        運(yùn)行命令后展示以下信息,就表示已經(jīng)構(gòu)建成功了

        Sending build context to Docker daemon  1.802GB
        Step 1/8 : FROM centos
         ---> 5d0da3dc9764
        Step 2/8 : RUN yum install net-tools.x86_64 -y
         ---> Using cache
         ---> a3d489e47eeb
        Step 3/8 : RUN yum -y install vim
         ---> Using cache
         ---> f7dfc03c0fd9
        Step 4/8 : RUN yum install vi -y
         ---> Using cache
         ---> c111382ba821
        Step 5/8 : VOLUME ["data/tomcat_file_1","/data/tomcat_file_2"]
         ---> Using cache
         ---> 37a5e93cbe4a
        Step 6/8 : EXPOSE 8080
         ---> Using cache
         ---> 1a2305853377
        Step 7/8 : CMD date
         ---> Using cache
         ---> 8102785d418d
        Step 8/8 : WORKDIR /root
         ---> Using cache
         ---> ad8a585d32e3
        Successfully built ad8a585d32e3
        Successfully tagged xindong_centos_3:latest
        

        查看鏡像,這就是我們剛剛創(chuàng)建好的鏡像

        [root@VM_0_5_centos ~]# docker images
        REPOSITORY       TAG       IMAGE ID       CREATED          SIZE
        xindong_tomcat   1.1       f72aa7e90980   37 seconds ago   680MB
        

        運(yùn)行這個(gè)鏡像

        # 通過(guò)鏡像id運(yùn)行
        docker run -d 鏡像id/鏡像名稱
        
        # 通過(guò)鏡像名稱運(yùn)行
        docker run -d 鏡像名稱:版本號(hào)
        
        
        

        鏡像保存、加載

        如果需要將自己構(gòu)建的鏡像發(fā)送給別人,又不想通過(guò)倉(cāng)庫(kù)來(lái)共享,就可以用鏡像保存的功能,

        鏡像保存

        首先我們將鏡像以文件的方式保存到本地磁盤(pán),使用save命令

        docker save 鏡像id/鏡像名稱 -o /本地目錄/文件名稱
        # 比如這樣
        docker save ad8a585d32e3 -o /root/dockerFile/xx.tar
        # 運(yùn)行后,就可以看到,文件已經(jīng)保存成功了
        [root@VM_0_5_centos dockerFile]# ll
        total 356440
        -rw------- 1 root root 364991488 Oct 28 18:45 xx.tar
        

        加載已保存的鏡像

        使用load命令加載,看到如下內(nèi)容,表示鏡像已經(jīng)加載成功了

        [root@VM_0_5_centos dockerFile]# docker load -i /root/dockerFile/xx.tar 
        2fefb3e7f055: Loading layer [==================================================>]   47.6MB/47.6MB
        8b589f61fd94: Loading layer [==================================================>]  58.82MB/58.82MB
        753a6b1d88c8: Loading layer [==================================================>]  19.99MB/19.99MB
        Loaded image ID: sha256:ad8a585d32e34b301aab4b278704a908f6eca53884fd531a79859dd6054a22ae
        

        接下來(lái)我們看看鏡像已經(jīng)加載好了,但是還沒(méi)有名字

        [root@VM_0_5_centos dockerFile]# docker images
        REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
        <none>       <none>    ad8a585d32e3   2 hours ago   356MB
        

        接下來(lái)使用tag命令給這個(gè)鏡像起個(gè)名字和版本號(hào)吧

        [root@VM_0_5_centos dockerFile]# docker tag ad8a585d32e3 xindong_tomcat_2:1.0
        
        # 在看看鏡像,已經(jīng)有名字了
        [root@VM_0_5_centos dockerFile]# docker images
        REPOSITORY         TAG       IMAGE ID       CREATED       SIZE
        xindong_tomcat_2   1.0       ad8a585d32e3   2 hours ago   356MB
        

        區(qū)別

        • 使用commit的話,其他人或者過(guò)一段時(shí)間后自己也不知道這個(gè)鏡像是怎么做出來(lái)的,都安裝了什么。。但是使用Dockerfile構(gòu)建的鏡像,我們能夠很清楚看到是執(zhí)行了哪些命令。
        • 既然使用docker commit這么不方便,那我們?yōu)槭裁催€要學(xué)習(xí)它呢?其實(shí)仔細(xì)想一下docker build的每一步構(gòu)建出來(lái)的鏡像是不是就是通過(guò)docker commit構(gòu)建出來(lái)的。因此學(xué)習(xí)docker commit可以讓我們更好的理解docker build;

        其實(shí)說(shuō)白了,不管是docker commit 和是dockefile,都是將目前已有的鏡像經(jīng)過(guò)處理后在生成一個(gè)新的鏡像,它們之間的流程圖如下

        docker打包 commit和Dockerfile過(guò)程

        總結(jié)

        以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持。

        分享到:
        標(biāo)簽:Docker Dockerfile 打包 服務(wù)器 過(guò)程
        用戶無(wú)頭像

        網(wǎng)友整理

        注冊(cè)時(shí)間:

        網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

        • 51998

          網(wǎng)站

        • 12

          小程序

        • 1030137

          文章

        • 747

          會(huì)員

        趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
        最新入駐小程序

        數(shù)獨(dú)大挑戰(zhàn)2018-06-03

        數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

        答題星2018-06-03

        您可以通過(guò)答題星輕松地創(chuàng)建試卷

        全階人生考試2018-06-03

        各種考試題,題庫(kù),初中,高中,大學(xué)四六

        運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

        記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

        每日養(yǎng)生app2018-06-03

        每日養(yǎng)生,天天健康

        體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

        通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定