亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

Docker -- 系統整潔之道 -- 0

2024-06-28 16:02:10
字體:
來源:轉載
供稿:網友

在我的小 rmbp 256G的硬盤里,實在是裝不下100多個G的虛擬機了,所以想把一些東西遷移到這兩年很火的Docker下,Docker以前也有過一兩次,只是按著別人給的用法用的,具體的一些細節并沒有深入,和git一樣,這么牛掰的東西怎么能不好好學一些呢?

這里寫圖片描述

Docker和虛擬機的區別


Docker是一種容器,虛擬機是一種管理程序虛擬機化(hypervisor virtualization,HV)。管理程序虛擬化通過中間層將一臺或者多臺獨立的機器虛擬運行在物理硬件之上,而容器(比如Docker)則是直接運行在操作系統內核之上的用戶空間。由于容器是運行在操作系統上的,所以只能運行底層和宿主機相同或者類似的操作系統,比如說在Ubuntu下可以在容器里運行Centos,卻不能運行Windows。

目前Windows上的Docker可以跑linux的Docker容器,是因為底下跑了Linux的VM,但是馬上就可以支持Windows Server 2016了,如鏈接[Introducing the Technical PReview of Docker Engine for Windows Server 2016](http://Introducing the Technical Preview of Docker Engine for Windows Server 2016)。

容器的優點:

一次save,到處運行。啟動速度快,消耗資源少。Docker與虛擬機性能比較

容器缺點:

資源隔離方面不如虛擬機。安全性問題,“權限隔離”做的不夠好,只要有Docker的命令權限,就可以操作所有的Docker實例。

Docker的目標


提供一個簡單、輕量的建模方式。職責的邏輯分離,防止開發環境和部署環境不一致,導致出現“開發時一切正常,肯定是運維問題”的情況??焖?、高效的開發生命周期。

Docker的核心組件


Docker客戶端和服務器

Docker是一個C/S架構的程序,Docker客戶端需要向Docker服務器發出請求,服務器完成請求后返回信息。一個本地Docker客戶端可以連接遠端的Docker服務器進行操作,如下圖。

這里寫圖片描述

Docker鏡像

鏡像是構建Docker世界的基石。用戶基于鏡像來維護自己的容器。Docker鏡像是Docker容器運行時的只讀模板,每一個鏡像由一系列的層 (layers) 組成。Docker使用 UnionFS來將這些層聯合到單獨的鏡像中。UnionFS允許獨立文件系統中的文件和文件夾(稱之為分支)被透明覆蓋,形成一個單獨連貫的文件系統。正因為有了這些層的存在,Docker是如此的輕量。當你改變了一個Docker鏡像,比如升級到某個程序到新的版本,一個新的層會被創建。因此,不用替換整個原先的鏡像或者重新建立(在使用虛擬機的時候你可能會這么做),只是一個新的層被添加或升級了?,F在你不用重新發布整個鏡像,只需要升級,層使得分發Docker鏡像變得簡單和快速。

Docker倉庫(Registry)

Docker使用Registry來保存用戶構建的鏡像,就像蘋果的apple store。Registry分為私有和公有兩種,Docker公司自己運營的Registry叫做Docker Hub。

Docker容器

Docker可以幫你構建和部署容器,用戶只需要把自己的應用程序或服務打包放進容器即可。每一個Docker容器都是從Docker鏡像創建的。Docker容器可以運行、開始、停止、移動和刪除。每一個Docker容器都是獨立和安全的應用平臺,Docker容器是Docker的運行部分。

Docker的技術組件

Docker可以被安裝在x64架構,內核3.10以上的linux系主機、win10以上windows和OS X 10.10.3且2010年以后的Mac上。在2013年Docker剛發布的時候,它是一款基于LXC的開源容器管理引擎。把LXC復雜的容器創建與使用方式簡化為Docker自己的一套命令體系。 隨著Docker的不斷發展,它開始有了更為遠大的目標,那就是反向定義容器的實現標準,將底層實現都抽象化到Libcontainer的接口。這就意味 著,底層容器的實現方式變成了一種可變的方案,無論是使用namespace、cgroups技術抑或是使用systemd等其他方案,只要實現了 Libcontainer定義的一組接口,Docker都可以運行。

安裝


安裝方法都很簡單,值得注意的是當前Docker版本的安裝需求,比如現在Linux下安裝的需求就上x64架構,內核3.10以上。

Mac下安裝方法,直接在官網上下載docker app,安裝即可。 Linux下安裝方法,Linux下最簡單的安裝方法就是apt和yum包管理工具進行安裝了。 Windows下安裝方法

還有一個比較好用的安裝腳本,這個腳本只支持在lsb、debian、fedora、Oracle、centos、redhat、os這幾個發行版中使用。

在安裝結束后,可以使用docker info命令來查看Docker是否裝好了。Mac下的docker info結果:

~ docker infoContainers: 0Running: 0Paused: 0Stopped: 0Images: 0Server Version: 1.12.1Storage Driver: aufsRoot Dir: /var/lib/docker/aufsBacking Filesystem: extfsDirs: 0Dirperm1 Supported: trueLogging Driver: json-fileCgroup Driver: cgroupfsPlugins:Volume: localNetwork: null bridge host overlaySwarm: inactiveRuntimes: runcDefault Runtime: runcSecurity Options: seccompKernel Version: 4.4.20-mobyOperating System: Alpine Linux v3.4OSType: linuxArchitecture: x86_64CPUs: 4Total Memory: 1.952 GiBName: mobyID: FSZQ:ZPKN:NEUW:55GH:Q33R:7L7M:5FLN:GW6E:CLHJ:NO66:WL4K:A3L5Docker Root Dir: /var/lib/dockerDebug Mode (client): falseDebug Mode (server): trueFile Descriptors: 34Goroutines: 98System Time: 2016-09-29T01:48:55.851895948ZEventsListeners: 2Registry: https://index.docker.io/v1/Insecure Registries:127.0.0.0/8

Mac裝好后如下圖的樣子,基本功能都已經在菜單上了。

這里寫圖片描述

同時Mac還有一個GUI界面Kitmatic,目前還是beta版,但是用起來還是很不錯的。

這里寫圖片描述

各種各樣的image看起來很好看。

使用入門


先把Docker的命令行打印出來。

~ docker --helpUsage: docker [OPTIONS] COMMAND [arg...] docker [ --help | -v | --version ]A self-sufficient runtime for containers.Options: --config=~/.docker Location of client config files -D, --debug Enable debug mode -H, --host=[] Daemon socket(s) to connect to -h, --help Print usage -l, --log-level=info Set the logging level --tls Use TLS; implied by --tlsverify --tlscacert=~/.docker/ca.pem Trust certs signed only by this CA --tlscert=~/.docker/cert.pem Path to TLS certificate file --tlskey=~/.docker/key.pem Path to TLS key file --tlsverify Use TLS and verify the remote -v, --version Print version information and quitCommands: attach Attach to a running container build Build an image from a Dockerfile commit Create a new image from a container's changes cp Copy files/folders between a container and the local filesystem create Create a new container diff Inspect changes on a container's filesystem events Get real time events from the server exec Run a command in a running container export Export a container's filesystem as a tar archive history Show the history of an image images List images import Import the contents from a tarball to create a filesystem image info Display system-wide information inspect Return low-level information on a container, image or task kill Kill one or more running containers load Load an image from a tar archive or STDIN login Log in to a Docker registry. logout Log out from a Docker registry. logs Fetch the logs of a container network Manage Docker networks node Manage Docker Swarm nodes pause Pause all processes within one or more containers port List port mappings or a specific mapping for the container ps List containers pull Pull an image or a repository from a registry push Push an image or a repository to a registry rename Rename a container restart Restart a container rm Remove one or more containers rmi Remove one or more images run Run a command in a new container save Save one or more images to a tar archive (streamed to STDOUT by default) search Search the Docker Hub for images service Manage Docker services start Start one or more stopped containers stats Display a live stream of container(s) resource usage statistics stop Stop one or more running containers swarm Manage Docker Swarm tag Tag an image into a repository top Display the running processes of a container unpause Unpause all processes within one or more containers update Update configuration of one or more containers version Show the Docker version information volume Manage Docker volumes wait Block until a container stops, then print its exit codeRun 'docker COMMAND --help' for more information on a command.'

我相信能用Docker都是的大神,就不翻譯了。

在安裝好以后來運行一個最簡單的hello world吧。

docker run hello-world

所見即所得,如圖。

這里寫圖片描述

在運行docker run的時候,可以看到打印出了Hello from Docker!,首先docker在本地去檢查了是否有一個叫做hello-world的鏡像,在這里,我們剛裝好的docker里必然是沒有的,所以docker就去Docker Hub上找這個鏡像,找到以后下載下來,run。讀一下這個helloworld的輸出,可以docker run -it ubuntu bash來運行一個ubuntu。來試一試

# -i 代表保持STDIN開啟,-t 代表為容器分配一個tty。docker run -it ubuntu bash

運行以后,在docker hub里下載好ubuntu鏡像后,docker構造好容器啟動,就可以和正常的shell一樣的進行操作了。

這里寫圖片描述

更多內容盡在docker-learn1。

參考鏈接


[Introducing the Technical Preview of Docker Engine for Windows Server 2016](http://Introducing the Technical Preview of Docker Engine for Windows Server 2016)Docker與虛擬機性能比較第一本Docker書5分鐘弄懂Docker一次“奇幻”的Docker libcontainer代碼閱讀之旅Docker背后的容器管理—Libcontainer深度解析LXC:Linux 容器工具阿里云Registry加速器docker使用阿里云Docker鏡像庫加速非常好的一篇Docker教程,比較全面知乎_Docker的應用場景在哪里一個比較詳細的命令用法

原文鏈接:http://dengnanyi.com/2016/09/28/docker-learn-0/


上一篇:ntp nfs

下一篇:samba

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美精品999| 欧美中文字幕在线观看| 欧美成人午夜影院| 91精品免费久久久久久久久| 久久影院免费观看| 日韩欧美精品中文字幕| 国产一区在线播放| 国产在线视频一区| 视频在线一区二区| 久久久天堂国产精品女人| 久久精品国产91精品亚洲| 亚洲成色www8888| 成人做爽爽免费视频| 免费91麻豆精品国产自产在线观看| 国产精品久久久久久久久久久新郎| 国产福利精品视频| 久久亚洲电影天堂| 精品久久久av| 欧美日韩不卡合集视频| 国产手机视频精品| 亚洲欧美日韩另类| 亚洲大胆人体av| 日韩欧美在线第一页| 久久久久久亚洲精品| 亚洲精品资源美女情侣酒店| 国产精品日韩在线| 亚洲第一福利在线观看| 日韩精品免费一线在线观看| 国产不卡av在线免费观看| 亚洲色图在线观看| 国内久久久精品| 精品爽片免费看久久| 日韩国产激情在线| 26uuu亚洲伊人春色| 日韩在线观看成人| 最近更新的2019中文字幕| 欧美日韩亚洲天堂| 亚洲午夜精品久久久久久性色| 91精品中国老女人| 国产视频综合在线| 国模叶桐国产精品一区| 国产精品夜间视频香蕉| 91av视频在线播放| 久久亚洲国产精品成人av秋霞| 国产成人精品视频| 中文字幕亚洲欧美在线| 国产一区二区黑人欧美xxxx| 色av吧综合网| 亚洲电影免费观看高清完整版在线观看| 成人a视频在线观看| 中文字幕精品久久| 欧美高清一级大片| 综合国产在线观看| 在线播放亚洲激情| 国产精品专区h在线观看| 午夜精品视频在线| 亚洲综合中文字幕在线观看| 久久男人资源视频| 亚洲精品国产成人| 欧美限制级电影在线观看| 成人h视频在线| 国产一区二区三区三区在线观看| 国产精品稀缺呦系列在线| 亚洲精品中文字幕有码专区| 久久999免费视频| 色偷偷偷综合中文字幕;dd| 亲爱的老师9免费观看全集电视剧| 91香蕉嫩草影院入口| 日韩免费看的电影电视剧大全| 色偷偷亚洲男人天堂| 精品视频—区二区三区免费| 亚洲一区二区三区xxx视频| 国产亚洲精品91在线| 亚洲一区二区三区四区在线播放| 久久成人国产精品| 欧美成人第一页| 日韩在线免费视频观看| 国产69精品99久久久久久宅男| 亚洲第一精品夜夜躁人人躁| 日本国产欧美一区二区三区| 久久亚洲精品中文字幕冲田杏梨| 亚洲一区二区久久久久久| 亚洲аv电影天堂网| 欧美午夜激情小视频| 国产在线精品成人一区二区三区| 国产欧美一区二区白浆黑人| 欧美性色xo影院| 亚洲缚视频在线观看| 亚洲国产小视频在线观看| 亚洲91精品在线观看| 97涩涩爰在线观看亚洲| 亚洲免费电影一区| 国产精品人人做人人爽| 日韩成人av网| 亚洲美女av在线播放| 国产日韩精品入口| 日韩视频在线免费| 亚洲最大激情中文字幕| 欧美亚洲国产另类| 国产有码一区二区| 国产成人拍精品视频午夜网站| 日韩av综合网站| 国产性猛交xxxx免费看久久| 91视频-88av| 亚洲精品电影在线观看| 久久人人爽人人爽爽久久| 欧美亚洲午夜视频在线观看| 俺去了亚洲欧美日韩| 欧美野外猛男的大粗鳮| 亚洲欧美制服综合另类| 色伦专区97中文字幕| 亚洲精品美女在线| 国产在线a不卡| 毛片精品免费在线观看| 国内外成人免费激情在线视频网站| 欧美成人精品在线观看| 日韩av一区在线观看| 日韩在线欧美在线国产在线| 久久99精品久久久久久琪琪| 8x海外华人永久免费日韩内陆视频| 国产一区二区三区三区在线观看| 日韩国产高清视频在线| 这里只有精品丝袜| 精品一区二区三区四区在线| 亚洲美女中文字幕| 亚洲国产精品va在线观看黑人| 国产精品久久视频| 国产欧美日韩丝袜精品一区| 国产成人一区二| 日韩欧美在线视频观看| 国产丝袜一区二区| 国产一区玩具在线观看| 亚洲精品999| 中文字幕亚洲综合久久| 欧美激情网站在线观看| 亚洲欧美在线第一页| 国产精品成人一区| 久久91精品国产91久久跳| 亚洲国产日韩欧美在线99| 美女黄色丝袜一区| 国产精品日韩精品| 成人中心免费视频| 国产剧情久久久久久| 国产美女久久精品| 欧美性在线观看| 岛国av一区二区在线在线观看| 国产精品视频99| 国产美女精彩久久| 国产亚洲综合久久| 一区二区三区高清国产| 国产亚洲精品久久久| 久久久久久久电影一区| 亚洲成人av中文字幕| 97香蕉超级碰碰久久免费的优势| 91免费视频国产| 欧美放荡办公室videos4k| 成人综合国产精品| 国产精品久久久久9999| 久久久久久久久久久免费| 亚洲欧洲在线看| 怡红院精品视频| 欧美大成色www永久网站婷| 欧美成人精品在线播放| 日韩在线视频导航|