国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

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

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

武昌專業(yè)的網(wǎng)絡(luò)推廣團(tuán)隊(duì),seo的特點(diǎn)是什么,數(shù)字營銷策劃方案,公司做網(wǎng)站應(yīng)記入哪個(gè)會(huì)計(jì)科目目錄 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)建自定義的鏡像

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

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

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

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

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

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

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

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

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

dockerfile形成(原理)

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

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

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

容器基于鏡像實(shí)例,運(yùn)行起來之后,容器變成可讀可寫層

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

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

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

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

docker的核心作用

用戶個(gè)性化定制docker的鏡像

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

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

2、維護(hù)者信息

3、鏡像的操作指令

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

dockerfile的語法

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

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

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

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

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

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

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

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

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

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

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

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

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

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

CMD和ENTRPOINT的區(qū)別

都是可以作為容器啟動(dòng)時(shí)的默認(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、多個(gè)ENTRYPOINT和多個(gè)cmd只會(huì)運(yùn)行最后一個(gè)(一個(gè)Dockerfile當(dāng)中只會(huì)有一個(gè)ENTRYPOINT和CMD)

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

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

RUN命令的優(yōu)化

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

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

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

區(qū)別

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

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://m.aloenet.com.cn/news/43747.html

相關(guān)文章:

  • 要做網(wǎng)站找誰幫忙做百度快照客服電話
  • 網(wǎng)站建設(shè)項(xiàng)目計(jì)劃書如何寫西地那非片能延時(shí)多久
  • 番禺區(qū)網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷師官網(wǎng)
  • 邢臺(tái)做網(wǎng)站的價(jià)格究竟多少錢?網(wǎng)站建設(shè)需求模板
  • JAVA做的小型網(wǎng)站有哪些今天新聞?lì)^條最新消息
  • 企業(yè)免費(fèi)郵箱注冊(cè)申請(qǐng)家庭優(yōu)化大師
  • 白城網(wǎng)站開發(fā)為企業(yè)策劃一次網(wǎng)絡(luò)營銷活動(dòng)
  • 美食網(wǎng)站建設(shè)畢業(yè)設(shè)計(jì)產(chǎn)品推廣計(jì)劃書怎么寫
  • 外貿(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)建全國文明城市我們?cè)谛袆?dòng)繪畫優(yōu)化seo教程技術(shù)
  • 網(wǎng)站建設(shè)工作流程html互聯(lián)網(wǎng)營銷師怎么做
  • 對(duì)網(wǎng)站排名沒有太大影響的因素網(wǎng)站備案查詢
  • 免費(fèi)微網(wǎng)站建站系統(tǒng)百度官方認(rèn)證
  • 免費(fèi)創(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è)測(cè)試流程圖友情鏈接如何添加
  • 怎么增加網(wǎng)站的外鏈學(xué)校網(wǎng)站建設(shè)
  • 網(wǎng)站設(shè)計(jì)任務(wù)書范文站長工具seo綜合查詢?cè)L問
  • 精通網(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)推廣軟件