中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

武昌專業(yè)的網(wǎng)絡(luò)推廣團隊seo的特點是什么

武昌專業(yè)的網(wǎng)絡(luò)推廣團隊,seo的特點是什么,數(shù)字營銷策劃方案,公司做網(wǎng)站應(yīng)記入哪個會計科目目錄 docker的創(chuàng)建鏡像的方式 dockerfile形成(原理) docker的核心作用 docker的文件結(jié)構(gòu) dockerfile的語法 CMD和ENTRPOINT的區(qū)別 創(chuàng)建dockerfile鏡像 區(qū)別 RUN命令的優(yōu)化 如何把run命令寫在一塊 copy和ADD區(qū)別 區(qū)別 centos7 構(gòu)建Apache的d…

目錄

docker的創(chuàng)建鏡像的方式

dockerfile形成(原理)

docker的核心作用

docker的文件結(jié)構(gòu)

dockerfile的語法

CMD和ENTRPOINT的區(qū)別

創(chuàng)建dockerfile鏡像

區(qū)別

RUN命令的優(yōu)化

如何把run命令寫在一塊

copy和ADD區(qū)別

區(qū)別

centos7 構(gòu)建Apache的dockerfile(編譯安裝)

頁面訪問

?編輯

centos7 構(gòu)建nginx的dockerfile(編譯安裝)


創(chuàng)建鏡像,創(chuàng)建自定義的鏡像

包括配置文件,掛載點,對外暴露的端口,設(shè)置環(huán)境變量

docker的創(chuàng)建鏡像的方式

1、基于已有的鏡像進行創(chuàng)建,根據(jù)官方提供的鏡像源,創(chuàng)建鏡像,然后拉起容器,是一個白版,值能提供基礎(chǔ)的功能,

擴展性的功能還是需要自定義(進入容器進行操作)

2、基于模版進行創(chuàng)建

導(dǎo)入鏡像到本地
docker import 模版 --  模版(Ubuntu:14)

3、dockerfile 聯(lián)合文件系統(tǒng)(unionFS),docker鏡像的基礎(chǔ)(鏡像通過分層來進行集成,特性:一次同時加載多個文件系統(tǒng),但是從外面來看,就是一個文件系統(tǒng))

docker鏡像世紀(jì)上就是由一層一層的文件系統(tǒng)組成,這種層級的文件系統(tǒng)就是unionFS

每層都是layers,每一層都包含文件系統(tǒng)的一部分,這些層次疊加在一起,最終形成的就是rootfs

dockerfile形成(原理)

bootfs	宿主機的引導(dǎo)文件系統(tǒng),啟動操作系統(tǒng)的文件,啟動容器需要的最基本的文件,包含宿主機的bootloader和kernel(提供內(nèi)核)
rootfs	鏡像的操作系統(tǒng),拉取鏡像會給鏡像自動創(chuàng)建一惡搞操作系統(tǒng)(拉取鏡像)
run add 創(chuàng)建容器時的命令
container
從而形成鏡像

bootfs 宿主機提供的內(nèi)核和引導(dǎo)程序

rootfs 就是容器的操作系統(tǒng),在dockerfile中,我們可以自己指定(是多個基礎(chǔ)鏡像和應(yīng)用鏡像結(jié)合起來的只讀層,鏡像實際上就死一個只讀文件)

容器基于鏡像實例,運行起來之后,容器變成可讀可寫層

在dockerfile當(dāng)中每創(chuàng)建一個指定都是一個鏡像層

鏡像層會被緩存和復(fù)用

一旦有一層鏡像失敗那么所有的鏡像層都會失敗,鏡像也不會創(chuàng)建

鏡像層是不可變的,你在某一層當(dāng)中添加一個新的命令,但是下一層刪除了指令,鏡像中基于這個命令創(chuàng)建的文件依然存在,但是在容器中看不見

docker的核心作用

用戶個性化定制docker的鏡像

docker的文件結(jié)構(gòu)

1、基礎(chǔ)鏡像信息

2、維護者信息

3、鏡像的操作指令

4、容器啟動時,執(zhí)行的命令(nginx定義好了容器執(zhí)行的命令,bin/bash,覆蓋了容器內(nèi)的標(biāo)準(zhǔn)輸出)

dockerfile的語法

FROM:指定基礎(chǔ)鏡像信息,指定容器的操作系統(tǒng)

MAINTAINER:指定維護者信息(可有可無)

RUN:在基礎(chǔ)的鏡像上執(zhí)行的命令,每個run就是一層,分層越多,鏡像越大

ENTRYPOINT:設(shè)置容器運行時的默認(rèn)命令(容器內(nèi)部運行的主程序)

CMD:指定容器運行時的默認(rèn)命令(docker run /bin/bash 后面加了其他的命令,CMD的指令將會被覆蓋)

EXPOSE:暴漏端口(指定容器的運行端口)

ENV:設(shè)置環(huán)境變量,環(huán)境變量可以被run命令使用(聲明容器運行需要的環(huán)境變量)

ADD:復(fù)制,解壓,解壓不支持.zip和.rar tar.gz tar.bz2 支持url地址解壓和復(fù)制(解壓)

COPY:復(fù)制文件,不能解壓,只能復(fù)制本地文件,文件要和dockerfile在一個目錄(官方推薦復(fù)制用copy)

VOLUME:創(chuàng)建一個容器內(nèi)的掛載點,既可以為宿主機掛載,也可以供容器掛載

USER:設(shè)置運行鏡像時使用的用戶或者UID(可以不加)

WORKDIR:為后續(xù)指令設(shè)置的工作目錄

ONBUILD:這個鏡像可以被其他鏡像引用,需要這個命令

ARG:傳參,用于創(chuàng)建容器時,傳遞參數(shù),ENV用于容器運行時設(shè)置環(huán)境變量

CMD和ENTRPOINT的區(qū)別

都是可以作為容器啟動時的默認(rèn)命令

創(chuàng)建dockerfile鏡像
vim Dockerfile
FROM centos:7 
MAINTAINER "this is my docker <xb>"
ENTRYPOINT ["echo","hello"]
CMD ["world"]構(gòu)建鏡像
[root@docker1 test1]# docker build -t centos7:test .
[+] Building 17.0s (5/5) FINISHED                                                                             docker:default=> [internal] load .dockerignore                                                                                       0.0s=> => transferring context: 2B                                                                                         0.0s=> [internal] load build definition from Dockerfile                                                                    0.0s=> => transferring dockerfile: 183B                                                                                    0.0s=> [internal] load metadata for docker.io/library/centos:7                                                             4.5s=> [1/1] FROM docker.io/library/centos:7@sha256:be65f488b7764ad3638f236b7b515b3678369a5124c47b8d32916d6487418ea4      12.5s=> => resolve docker.io/library/centos:7@sha256:be65f488b7764ad3638f236b7b515b3678369a5124c47b8d32916d6487418ea4       0.0s=> => sha256:2d473b07cdd5f0912cd6f1a703352c82b512407db6b05b43f2553732b55df3bc 76.10MB / 76.10MB                        8.6s=> => sha256:be65f488b7764ad3638f236b7b515b3678369a5124c47b8d32916d6487418ea4 1.20kB / 1.20kB                          0.0s=> => sha256:dead07b4d8ed7e29e98de0f4504d87e8880d4347859d839686a31da35a3b532f 529B / 529B                              0.0s=> => sha256:eeb6ee3f44bd0b5103bb561b4c16bcb82328cfe5809ab675bb17ab3a16c517c9 2.75kB / 2.75kB                          0.0s=> => extracting sha256:2d473b07cdd5f0912cd6f1a703352c82b512407db6b05b43f2553732b55df3bc                               3.8s=> exporting to image                                                                                                  0.0s=> => exporting layers                                                                                                 0.0s=> => writing image sha256:95db50faac27607f675dd62ed2fd7a54e573f28c4b4c6b6b19f8c0718a71c0bc                            0.0s=> => naming to docker.io/library/centos7:test                                                                         0.0s
創(chuàng)建容器
[root@docker1 test1]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos7      test      95db50faac27   2 years ago   204MB
[root@docker1 test1]# docker run -it --name test1 centos7:test 
hello world
[root@docker1 test1]# 
區(qū)別

1、cmd可以把參數(shù)傳給ENTRYPOINT

2、多個ENTRYPOINT和多個cmd只會運行最后一個(一個Dockerfile當(dāng)中只會有一個ENTRYPOINT和CMD)

3、ENTRYPOINT的指令不會被覆蓋,CMD的指令如果在docker run的后面加上輸出,會被覆蓋

4、ENTRYPOINT的指令在容器啟動時啟動時執(zhí)行,都會成為容器的主進程,主進程負(fù)責(zé)接收信號,處理容器的生命周期,主進程退出,容器也將會終止運行

RUN命令的優(yōu)化

主要是減少鏡像的層數(shù):把多個run命令寫在一塊

如何把run命令寫在一塊
&& 符號
RUN yum -y install nginx && make -j 4 && make install
前一個命令執(zhí)行成功才會執(zhí)行下一個命令; 符號
RUN yum -y install nginx ; make -j 4 ; make install
不管前一個命令是否成功,后面的命令都會執(zhí)行|| 符號
RUN yum -y install nginx || make -j 4 || make install
如果前面的命令執(zhí)行失敗,才會執(zhí)行后面的操作反斜杠\ 換行  符號
RUN yum -y install nginx \
&& make j 4\
&& make install
可讀性更高
copy和ADD區(qū)別

copy和add都可以吧本地文件復(fù)制到鏡像中,但是官方推薦如果是復(fù)制使用copy

區(qū)別

add可以解壓,如果是一個壓縮文件,add在復(fù)制之后會自動解壓(tar.gz和tar.bz2) 可以支持URL下載源文件,支持下載,但不能解壓,通過URL拷貝的文件無法自動解壓

copy只能復(fù)制,不能解壓,而且只能是本地文件,不支持URL路徑

centos7 構(gòu)建Apache的dockerfile(編譯安裝)
把源碼包拖到opt目錄下
vim Dockerfile
#創(chuàng)建基礎(chǔ)鏡像
FROM centos:7
MAITAIENR "this is my apache <dn>"
RUN yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl
ADD apr-1.6.2.tar.gz /opt
ADD httpd-2.4.29.tar.bz2 /opt
ADD apr-util-1.6.0.tar.gz /opt
RUN mv /opt/apr-1.6.2 /opt/httpd-2.4.29/srclib/apr && mv /opt/apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util &&\
cd /opt/httpd-2.4.29 &&\
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi &&\
make -j 4 && make install
EXPOSE 80
CMD ["/usr/local/httpd/bin/apachectl","-D","FOREGROUND"]docker build -t apache:centos .docker run -itd --name httpd1 -p 50:80 apache:centos基于鏡像的二次構(gòu)建
FROM centos:7 AS first
MAITAIENR "this is my apache <dn>"
RUN yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl
ADD apr-1.6.2.tar.gz /opt
ADD httpd-2.4.29.tar.bz2 /opt
ADD apr-util-1.6.0.tar.gz /opt
RUN mv /opt/apr-1.6.2 /opt/httpd-2.4.29/srclib/apr && mv /opt/apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util &&\
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi &&\
make -j 4 && make install
#二層構(gòu)建
FROM centos:7
COPY --from=first /usr/local/httpd /usr/local/httpd
RUN yum -y cre pcre-devel expat-devel perl
EXPOSE 80
CMD ["/usr/local/httpd/bin/apachectl","-D","FOREGOUND"]docker build -t apache1:centos .docker run -itd --name httpd1 -p 50:80 apache:centos
頁面訪問
centos7 構(gòu)建nginx的dockerfile(編譯安裝)
把源碼包拖到opt/test目錄下
vim Dockerfile
FROM centos:7
MAINTAINER "this is nginx <xb>"
ADD nginx-1.22.0.tar.gz /opt/test/
RUN yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel &&\
useradd -M -s /sbin/nologin nginx &&\
cd /opt/test/nginx-1.22.0/ &&\
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module &&\
make -j 4 && make install &&\
chown -R nginx.nginx /usr/local/nginx/ &&\
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
EXPOSE 80
CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"][root@docker1 test]# docker build -t nginx:centos .
[+] Building 0.0s (8/8) FINISHED                                                                              docker:default=> [internal] load build definition from Dockerfile                                                                    0.0s=> => transferring dockerfile: 791B                                                                                    0.0s=> [internal] load .dockerignore                                                                                       0.0s=> => transferring context: 2B                                                                                         0.0s=> [internal] load metadata for docker.io/library/centos:7                                                             0.0s=> [internal] load build context                                                                                       0.0s=> => transferring context: 95B                                                                                        0.0s=> [1/3] FROM docker.io/library/centos:7                                                                               0.0s=> CACHED [2/3] ADD nginx-1.22.0.tar.gz /opt/test/                                                                     0.0s=> CACHED [3/3] RUN yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel &&useradd -M -s /sb  0.0s=> exporting to image                                                                                                  0.0s=> => exporting layers                                                                                                 0.0s=> => writing image sha256:5f90f4b42382377324edf884560f8118d6873889dd8179df68b47de39b6fb334                            0.0s=> => naming to docker.io/library/nginx:centos                                                                         0.0s
[root@docker1 test]# docker run -itd --name xiaobu -p 8080:80 nginx:centos 
61beb14328b28a424a4c2e88d7e3a1f63e4ac55b551ec32a3656bcff3cb0711b
[root@docker1 test]# docker ps -aCONTAINER ID   IMAGE            COMMAND                  CREATED         STATUS                     PORTS                                   NAMES
61beb14328b2   nginx:centos     "/usr/local/nginx/sb…"   5 seconds ago   Exited (1) 4 seconds ago                                           xiaobu
6068029975ff   apache1:centos   "/usr/local/httpd/bi…"   3 hours ago     Up 3 hours                 0.0.0.0:1314->80/tcp, :::1314->80/tcp   httpd1
5b6c5af75176   apache:centos    "/usr/local/httpd/bi…"   3 hours ago     Exited (0) 3 hours ago                                             http1

頁面訪問

http://www.risenshineclean.com/news/43747.html

相關(guān)文章:

  • 要做網(wǎng)站找誰幫忙做百度快照客服電話
  • 網(wǎng)站建設(shè)項目計劃書如何寫西地那非片能延時多久
  • 番禺區(qū)網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷師官網(wǎng)
  • 邢臺做網(wǎng)站的價格究竟多少錢?網(wǎng)站建設(shè)需求模板
  • JAVA做的小型網(wǎng)站有哪些今天新聞頭條最新消息
  • 企業(yè)免費郵箱注冊申請家庭優(yōu)化大師
  • 白城網(wǎng)站開發(fā)為企業(yè)策劃一次網(wǎng)絡(luò)營銷活動
  • 美食網(wǎng)站建設(shè)畢業(yè)設(shè)計產(chǎn)品推廣計劃書怎么寫
  • 外貿(mào)網(wǎng)站建站公司專業(yè)推廣圖片
  • 網(wǎng)站制作公司 番禺網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷
  • 營口網(wǎng)站建設(shè)做網(wǎng)站seo推廣公司
  • 海珠區(qū)做網(wǎng)站的公司如何讓百度收錄自己的網(wǎng)站信息
  • 創(chuàng)建全國文明城市我們在行動繪畫優(yōu)化seo教程技術(shù)
  • 網(wǎng)站建設(shè)工作流程html互聯(lián)網(wǎng)營銷師怎么做
  • 對網(wǎng)站排名沒有太大影響的因素網(wǎng)站備案查詢
  • 免費微網(wǎng)站建站系統(tǒng)百度官方認(rèn)證
  • 免費創(chuàng)辦網(wǎng)站印度疫情最新消息
  • 99到家網(wǎng)站怎么做客戶關(guān)系管理
  • 娛樂網(wǎng)站建設(shè)公司營銷軟件有哪些
  • 怎么搭建自己的博客網(wǎng)站百度網(wǎng)頁版入口鏈接
  • 有名網(wǎng)站建設(shè)公司百度網(wǎng)盤pc端網(wǎng)頁版
  • 網(wǎng)站建設(shè)測試流程圖友情鏈接如何添加
  • 怎么增加網(wǎng)站的外鏈學(xué)校網(wǎng)站建設(shè)
  • 網(wǎng)站設(shè)計任務(wù)書范文站長工具seo綜合查詢訪問
  • 精通網(wǎng)站建設(shè) 全能建站密碼pdf理發(fā)美發(fā)培訓(xùn)學(xué)校
  • 公司網(wǎng)站制作推廣公司
  • 電子商務(wù)網(wǎng)站有哪幾種搜索引擎營銷的常見方式
  • 網(wǎng)站代理游戲合川網(wǎng)站建設(shè)
  • 蘇州專業(yè)高端網(wǎng)站建設(shè)公司專業(yè)制作網(wǎng)站的公司哪家好
  • 泰州網(wǎng)站建設(shè)服務(wù)熱線全網(wǎng)推廣軟件