Docker镜像

1.像一个文件联合系统UnionFS,是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下,Union 文件系统是 Docker 镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。

bootfs(boot file system)主要包含bootloader和kernel, bootloader主要是引导加载kernel, Linux刚启动时会加载bootfs文件系统,在Docker镜像的最底层是bootfs。这一层与我们典型的Linux/Unix系统是一样的,包含boot加载器和内核。当boot加载完成之后整个内核就都在内存中了,此时内存的使用权已由bootfs转交给内核,此时系统也会卸载bootfs。

rootfs (root file system) ,在bootfs之上。包含的就是典型 Linux 系统中的 /dev, /proc, /bin, /etc 等标准目录和文件
对于一个精简的OS,rootfs可以很小,只需要包括最基本的命令、工具和程序库就可以了,因为底层直接用Host的kernel,自己只需要提供 rootfs 就行了。由此可见对于不同的linux发行版, bootfs基本是一致的, rootfs会有差别, 因此不同的发行版可以公用bootfs。
3.镜像分层的好处就是资源共享
列如:有多个镜像都从相同的 base 镜像构建而来,那么宿主机只需在磁盘上保存一份base镜像,

同时内存中也只需加载一份 base 镜像,就可以为所有容器服务了。而且镜像的每一层都可以被共享。
4.docker 镜像都是只读的,当容器启动时,一个新的可写层会加载到镜像的顶部,这一层被称为容器层,容器层之下都称为镜像层。

5.镜像的构建可以通过 Dockfile 和docker commit 这两种方式
docker commit 方式是在一个镜像的基础上,重新对该镜像操作后重新生成的一个专属的镜像。
命令格式 docker commit -m "提交的描述信息" -a "作者信息" 容器ID 要创建的目标的镜像名:[标签名]
示例



  • Docker闀滃儚
    绛旓細1.鍍忎竴涓枃浠惰仈鍚堢郴缁烾nionFS锛屾槸涓绉嶅垎灞傘佽交閲忕骇骞朵笖楂樻ц兘鐨勬枃浠剁郴缁燂紝瀹冩敮鎸佸鏂囦欢绯荤粺鐨勪慨鏀逛綔涓轰竴娆℃彁浜ゆ潵涓灞傚眰鐨勫彔鍔狅紝鍚屾椂鍙互灏嗕笉鍚岀洰褰曟寕杞藉埌鍚屼竴涓櫄鎷熸枃浠剁郴缁熶笅锛孶nion 鏂囦欢绯荤粺鏄 Docker 闀滃儚鐨勫熀纭銆傞暅鍍忓彲浠ラ氳繃鍒嗗眰鏉ヨ繘琛岀户鎵匡紝鍩轰簬鍩虹闀滃儚锛堟病鏈夌埗闀滃儚锛夛紝鍙互鍒朵綔鍚勭鍏蜂綋鐨勫簲鐢ㄩ暅鍍忋
  • 娴呰皥Docker鐨処mage銆丆ontainer銆丷egistry
    绛旓細涓銆佸悕璇嶈В閲婏細Image锛闀滃儚銆侰ontainer锛氬鍣ㄣ俁egistry锛氶暅鍍忎粨搴撱備簩銆佺浉浜掑叧绯伙細Docker Registry鏄竴涓泦涓瓨鍌ㄣ佸垎鍙戦暅鍍忕殑鏈嶅姟锛屼究浜庢垜浠湪涓嶅悓鐨勭幆澧冧娇鐢ㄦ煇涓涓暅鍍忋備竴涓猂esistry涔熷彲浠ョ敱寰堝鍙繚瀛樺悓涓闀滃儚鐨勪笉鍚岀増鏈殑灏忎粨搴撶粍鎴愩侱ocker Image鏄竴涓壒娈婄殑鏂囦欢绯荤粺锛岄櫎浜嗘彁渚涘鍣ㄨ繍琛屾椂鎵闇鐨勭▼搴忋...
  • Docker闀滃儚鎿嶄綔甯哥敤鎸囦护鏈夊摢浜?
    绛旓細docker version锛氭煡鐪媎ocker鐗堟湰;docker info锛氭煡鐪媎ocker璇︾粏淇℃伅;docker --help锛氭煡鐪媎ocker鍛戒护;闀滃儚鍛戒护 docker images锛氬垪鍑烘湰鍦颁富鏈轰笂鐨勯暅鍍忥紝REPOSITORY锛氳〃绀洪暅鍍忕殑浠撳簱婧;TAG锛氶暅鍍忕殑鏍囩;IMAGE ID锛氶暅鍍廔D;CREATED锛氶暅鍍忓垱寤烘椂闂;SIZE 锛氶暅鍍忓ぇ灏忥紝鍚屼竴涓粨搴撴簮鍙互鏈夊涓猅AG锛屽彲浠ヨ〃绀轰粨搴撴簮鐨勪笉鍚...
  • 缁堜簬鏈変汉鎶Docker璁叉竻妤氫簡,Docker鍏ラ棬鏁欑▼,鍘熸潵杩欎箞绠鍗...
    绛旓細•018.Docker瑙嗛鏁欑▼锛欴ocker浣跨敤鍒濅綋楠-Docker闀滃儚鍚姩杩愯 •019.Docker瑙嗛鏁欑▼锛欴ocker浣跨敤鍒濅綋楠-璁块棶瀹瑰櫒涓殑Tomcat鏈嶅姟 •020.Docker瑙嗛鏁欑▼锛欴ocker浣跨敤鍒濅綋楠-Docker鐨勭綉缁滆闂満鍒 •021.Docker瑙嗛鏁欑▼锛欴ocker浣跨敤鍒濅綋楠-杩涘叆Docker瀹瑰櫒鍐呴儴 •022.Docker瑙嗛鏁欑▼锛...
  • docker鍩虹闀滃儚鏄粈涔堟剰鎬
    绛旓細瀵逛簬docker闀滃儚锛屽畼鏂圭殑瀹氫箟濡備笅: An image is a read-only template with instructions for creating a Docker container. Often, an image is based on another image, with some additional customization. For example, you may build an image which is based on the ubuntu image, but installs ...
  • 娣卞叆鐞嗚Вdocker鐨闀滃儚鍜屽鍣
    绛旓細闀滃儚锛圛mage锛夊氨鏄竴鎺ㄥ彧璇诲眰Image锛坮ead-only layer锛夌殑缁熶竴瑙嗚锛屼篃璁歌繖浜涘畾涔夋湁浜涢毦鐞嗚В锛屼笅闈㈣繖寮犲浘鑳藉甯姪璇昏呯悊瑙i暅鍍忕殑瀹氫箟 浠庡乏杈瑰線鍙虫垜浠湅鍒颁簡澶氫釜鍙灞傦紝浠栦滑閲嶅彔鍦ㄤ竴璧凤紝闄や簡鏈涓嬮潰涓灞傦紝鍏朵粬灞傞兘浼氭湁涓涓寚閽堟寚鍚戜笅涓灞傦紝杩欎簺灞傛槸docker鍐呴儴鐨勫疄鐜扮粏鑺傦紝骞朵笖鑳藉鍦ㄤ富鏈猴紙杩愯docker鐨勬満鍣級...
  • Docker鏄粈涔圖ocker鐨勫畨瑁呭拰鍗歌浇Docker涓叧浜闀滃儚鐨勫熀鏈搷浣
    绛旓細鍏朵腑,-m鎸囧畾璇存槑淇℃伅;-a鎸囧畾鐢ㄦ埛淇℃伅;72f1a8a0e394浠h〃瀹瑰櫒鐨刬d;xianhu/centos:git鎸囧畾鐩爣闀滃儚鐨勭敤鎴峰悕銆佷粨搴撳悕鍜 tag 淇℃伅銆傛敞鎰忚繖閲岀殑鐢ㄦ埛鍚峹ianhu,鍚庤竟浼氱敤鍒般 姝ゆ椂Docker寮曟搸涓氨鏈変簡鎴戜滑鏂板缓鐨勯暅鍍弜ianhu/centos:git,姝ら暅鍍忓拰鍘熸湁鐨凜entOS闀滃儚鍖哄埆鍦ㄤ簬澶氫簡涓狦it宸ュ叿銆傛鏃舵垜浠埄鐢ㄦ柊闀滃儚鍒涘缓鐨勫鍣,鏈韩灏...
  • 濡備綍鐢Dockerfile鍒涘缓闀滃儚
    绛旓細dockerfile浣跨敤鍩烘湰鐨勫熀浜嶥SL璇硶鐨勬寚瀹氭潵鏋勫缓涓涓docker闀滃儚銆備箣鍚庝娇鐢╠ocker build 鍛戒护鍩轰簬dockerfile涓殑鎸囧畾鏋勫缓涓涓柊鐨勯暅鍍 1.docker澶т綋涓婃寜鐓у涓嬫祦绋嬫墽琛宒ockerfile涓殑鎸囦护锛歞ocker浠庡熀纭闀滃儚杩愯涓涓鍣 鎵ц涓鏉℃寚浠わ紝瀵瑰鍣ㄥ仛鍑轰慨鏀 鎵ц绫讳技docker commit鐨勬搷浣滐紝鎻愪氦涓涓柊鐨勯暅鍍忓眰 docker鍐...
  • 濡備綍鍩轰簬docker鏋勫缓鍜屽彂甯働ython搴旂敤绋嬪簭?
    绛旓細鍩轰簬 Docker 鏋勫缓鍜屽彂甯 Python 搴旂敤绋嬪簭閫氬父闇瑕佷互涓嬫楠わ細缂栧啓 Python 搴旂敤绋嬪簭浠g爜銆傚彲浠ヤ娇鐢ㄤ换浣曚綘鐔熸倝鐨 Python 妗嗘灦锛屽 Flask銆丏jango 绛夈傚垱寤轰竴涓 Dockerfile锛岀敤浜庡畾涔 Docker 闀滃儚鐨勬瀯寤鸿繃绋嬨傚湪 Dockerfile 涓紝闇瑕佹寚瀹氬熀纭闀滃儚銆佸畨瑁 Python 搴撱佸皢搴旂敤绋嬪簭浠g爜澶嶅埗鍒伴暅鍍忎腑绛夋搷浣溿備互涓嬫槸涓涓...
  • docker 闀滃儚鍒嗗眰鍘熺悊
    绛旓細鏋勫缓杩囩▼濡備笅鍥炬墍绀 鍙互鐪嬪埌锛屾柊闀滃儚鏄粠 base 闀滃儚涓灞備竴灞傚彔鍔犵敓鎴愮殑銆傛瘡瀹夎涓涓蒋浠讹紝灏卞湪鐜版湁闀滃儚鐨勫熀纭涓婂鍔犱竴灞傘傞棶浠涔 Docker 闀滃儚瑕侀噰鐢ㄨ繖绉嶅垎灞傜粨鏋勫憿锛熸渶澶х殑涓涓ソ澶勫氨鏄 - 鍏变韩璧勬簮銆傛瘮濡傦細鏈夊涓暅鍍忛兘浠庣浉鍚岀殑 base 闀滃儚鏋勫缓鑰屾潵锛岄偅涔 Docker Host 鍙渶鍦ㄧ鐩樹笂淇濆瓨涓浠 base ...
  • 扩展阅读:github中文官网入口 ... docker国内镜像仓库 ... github免费入口 ... github永久官网 ... github资源网站 ... docker官方网站 ... github官网进入 ... github地址 ... 尽量少用docker ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网