久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

docker 基礎(chǔ)

 印度阿三17 2019-05-18

Docker基本概念

什么是容器技術(shù)

  1. 一種虛擬化的方案

  2. 操作系統(tǒng)虛擬化

  3. 依賴于linux內(nèi)核特性:Namespace和Cgroup

  •  linux容器技術(shù) VS 虛擬機(jī)

虛擬機(jī)需要完整的操作系統(tǒng),。需要模擬硬件行為,對內(nèi)存和cpu損耗相當(dāng)大 同樣配置的服務(wù)器,,容器能提供更多服務(wù)能力,,服務(wù)更多用戶。磁盤占用空間更少,,啟動更快,。容器不容易安裝和管理,,而docker可以改善這些,使容器安裝簡單,,管理方便,。


什么是docker

  1. 將應(yīng)用程序自動部署到容器

  2. 使用GO語言編寫的開源引擎

Docker特點(diǎn)

  1. 提供簡單輕量的建模方式:快,資源利用率高

  2. 職責(zé)的邏輯分離

  3. 快速高效的開發(fā)生命周期:在容器中開發(fā),,以容器形式交付,,縮短產(chǎn)品上線周期

  4. 鼓勵使用面向服務(wù)的架構(gòu):單個容器只運(yùn)行一個應(yīng)用或者進(jìn)程,一系列內(nèi)部互聯(lián)的容器,,使擴(kuò)展,、調(diào)試程序變得簡單。分布式應(yīng)用程序模型:高內(nèi)聚,,低耦合,,單一任務(wù),在運(yùn)行過程中容易定位問題

使用Docker做什么

  1. 使用docker容器開發(fā),、測試,、部署服務(wù)

  2. 創(chuàng)建隔離的運(yùn)行環(huán)境

  3. 搭建測試環(huán)境

  4. 構(gòu)建Paas設(shè)施

  5. 提供SaaS應(yīng)用程序

  6. 高性能,超大規(guī)模的宿主機(jī)部署

Docker基本組成

客戶端,、守護(hù)進(jìn)程

  1. C/S架構(gòu)

  2. 本地/遠(yuǎn)程

鏡像

  1. 容器的基石,,是一個層疊的只讀文件系統(tǒng)

  2. Bootfs:引導(dǎo)文件系統(tǒng),,容器啟動后,,它會移動到內(nèi)存中,引導(dǎo)文件系統(tǒng)會被卸載

  3. Rootls:比如ubuntu,centos,,一種或者多種操作系統(tǒng),,只讀,聯(lián)合加載方式,,基礎(chǔ)鏡像

  4. Add emac:聯(lián)合加載方式,,在基礎(chǔ)鏡像上一次加載多個文件系統(tǒng),對外只能看到一個麻醉中的文件系統(tǒng)會包含低層所有文件和目錄,,它下面的鏡像為副鏡像,,以此類推到最底部,最底部是基礎(chǔ)鏡像

容器

  1. 通過鏡像啟動

  2. 啟動和執(zhí)行階段

  3. 寫時復(fù)制

  4. 在鏡像的最頂層加載一個可寫層,,初始可寫層是空的,,當(dāng)文件系統(tǒng)發(fā)生變化的時候,這些變化都會應(yīng)用到這可寫層上,,比如:如果修改配置文件,,會先從只讀層復(fù)制到可寫層,該文件的只讀版本依然存在,,但是被可寫層的文件副本隱藏,。

倉庫

  1. 公有倉庫

  2. 私有倉庫

Docker容器相關(guān)技術(shù)

Namespaces命名空間

  1. 封裝:代碼隔離

  2. 操作系統(tǒng):提供系統(tǒng)資源的隔離:進(jìn)程,,文件系統(tǒng),網(wǎng)絡(luò)等等,,為了實(shí)現(xiàn)輕量級虛擬化服務(wù),,也就是我們說的容器

  3. 五中命名空間

  • PID :進(jìn)程隔離

  • NET:管理網(wǎng)絡(luò)接口

  • IPC:管理跨進(jìn)程通信訪問

  • MNT:管理掛載點(diǎn)

  • UTS:隔離內(nèi)核和版本標(biāo)識

Control group 控制組

cgroups是Linux內(nèi)核提供的一種機(jī)制,這種機(jī)制可以根據(jù)特定的行為,,把一系列系統(tǒng)任務(wù)及其子任務(wù)整合(或分隔)到按資源劃分等級的不同組內(nèi),,從而為系統(tǒng)資源管理提供一個統(tǒng)一的框架。通俗的來說,,cgroups可以限制,、記錄、隔離進(jìn)程組所使用的物理資源(包括:CPU,、memory,、IO等),為容器實(shí)現(xiàn)虛擬化提供了基本保證,,是構(gòu)建Docker等一系列虛擬化管理工具的基石,。

cgroups的作用

  • 資源限制(Resource Limitation):cgroups可以對進(jìn)程組使用的資源總額進(jìn)行限制。如設(shè)定應(yīng)用運(yùn)行時使用內(nèi)存的上限,,一旦超過這個配額就發(fā)出OOM

  • 優(yōu)先級分配(Prioritization):通過分配的CPU時間片數(shù)量及硬盤IO帶寬大小,,實(shí)際上就相當(dāng)于控制了進(jìn)程運(yùn)行的優(yōu)先級。

  • 資源計(jì)量:cgroups可以統(tǒng)計(jì)系統(tǒng)的資源使用量,,如CPU使用時長,、內(nèi)存用量等等,這個功能非常適用于計(jì)費(fèi)

  • 資源控制:cgroups可以對進(jìn)程組執(zhí)行掛起,、恢復(fù)等操作,。

Namespaces命名空間和Control group 控制組帶來的特性

  1. 文件系統(tǒng)隔離:每個容器都有自己的root文件系統(tǒng)

  2. 進(jìn)程隔離:每個容器都運(yùn)行在自己的進(jìn)程環(huán)境中

  3. 網(wǎng)絡(luò)隔離:容器間的虛擬網(wǎng)絡(luò)接口和IP地址都是分開的

  4. 資源隔離和分組:使用Cgroup將CPU和內(nèi)存之類的資源獨(dú)立分配給每個Docker容器

Docker安裝

  1. 環(huán)境說明:本地安裝VMware centos7

  2. docker安裝參考: https://docs./install/linux/docker-ce/centos/#install-docker-ce

  3. 安裝命令如下:

#yum update

#yum install -y yum-utils device-mapper-persistent-data lvm2

#yum-config-manager --add-repo https://download./linux/centos/docker-ce.repo

#yum-config-manager --enable docker-ce-edge

#yum install docker-ce

#yum list docker-ce --showduplicates | sort -r

#yum install docker-ce-18.04.0.ce

#systemctl start docker

  1. 查看docker的日志

#journalctl -u docker.service

  1. 關(guān)閉防火墻和網(wǎng)絡(luò)服務(wù)

#systemctl stop firewalld.service #systemctl disable firewalld.service #systemctl stop NetworkManger

Docker基本命

Docker run 命令

  •  docker run:創(chuàng)建一個新的容器并運(yùn)行一個命令

#docker run –help

  • 參數(shù)說明:

  • -a stdin : 指定標(biāo)準(zhǔn)輸入輸出內(nèi)容類型,可選STDIN, STDOUT or STDERR

  • -d:后臺運(yùn)行容器,,并返回容器ID

  • -i:以交互模式運(yùn)行容器,,通常與-t同時使用

  • -t:為容器重新分配一個偽輸入終端,通常與-i同時使用

  • --name=”容器名稱”:為容器指定一個名稱

  • --dns 8.8.8.8:指定容器使用的DNS服務(wù)器,,默認(rèn)和宿主機(jī)一致

  • --dns-search 域名 :指定容器DNS搜索域名,,默認(rèn)和宿主機(jī)一致

  • -h “mars”:指定容器的hostname

  • -e username=”ritchie”:設(shè)置環(huán)境變量

  • --env-file=[]:從指定文件讀入環(huán)境變量

  • -m:設(shè)置容器使用內(nèi)存最大值

Docker start/stop/restart 命令

  •  啟動一個或者多個已經(jīng)被停止的容器。停止一個運(yùn)行中的容器,。重啟容器,。

#docker start [OPTIONS] CONTAINER [CONTAINER…]

Docker kill 命令

  •  殺掉一個運(yùn)行中的容器

#docker kill [OPTIONS] CONTAINER [CONTAINER…]

Docker rm 命令

  •  docker rm :刪除一個或多少容器

docker rm [OPTIONS] CONTAINER [CONTAINER...] OPTIONS說明:

  • -f :通過SIGKILL信號強(qiáng)制刪除一個運(yùn)行中的容器

  • -l :移除容器間的網(wǎng)絡(luò)連接,而非容器本身

  • -v :-v 刪除與容器關(guān)聯(lián)的卷

Docker create 命令

  •  創(chuàng)建一個新的容器但是不啟動它,用法同docker run

docker create [OPTIONS] IMAGE [COMMAND] [ARG...]

Docker cp 命令

  •  用于容器與主機(jī)之間的數(shù)據(jù)拷貝,。

Usage: docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

Options:

  • -a, --archive Archive mode (copy all uid/gid information)

  • -L, --follow-link 保持源目標(biāo)中的鏈接

本地鏡像管理

  • docker images :列出本地鏡像,。

  • docker rmi :刪除本地一個或多少鏡像。

  • docker tag :標(biāo)記本地鏡像,,將其歸入某一倉庫,。

  • docker build :使用Dockerfile創(chuàng)建鏡像,。

  • docker save :將指定鏡像保存成 tar 歸檔文件。

  • docker import :從歸檔文件中創(chuàng)建鏡像,。

  • docker info : 顯示 Docker 系統(tǒng)信息,,包括鏡像和容器數(shù)。

  • docker version :顯示 Docker 版本信息,。

Docker sawrm

常用命令

動態(tài)增加副本 #docker service scale erp_callcenter_callcentererp_v1=2

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多