<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      docker(一)--基礎(chǔ)命令

      什么是容器
      一種虛擬化的方案
      操作系統(tǒng)級別的虛擬化
      只能運(yùn)行相同或相似內(nèi)核的操作系統(tǒng)
      依賴于linux內(nèi)核特性:namespace和cgroups(control group)


      linux namespaces 命名空間

      通過namespaces將以下資源隔離:

      uts(unix timesharing system)主機(jī)名和域名
      ipc(inter-process communication)信號量、消息隊(duì)列和共享內(nèi)存 跨進(jìn)程通信的訪問
      pid(processid) 進(jìn)程編號
      net(network) 管理網(wǎng)絡(luò)接口,網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)棧、端口等
      mnt(mount) 管理掛載點(diǎn)(文件系統(tǒng))
      user 用戶和用戶組

       

      control groups(cgroups)控制組 用戶空間的資源分配

      blkio:塊設(shè)備io
      cpu:cpu
      cpuacct:cpu資源使用報(bào)告
      cpuset:多處理器平臺上的cpu集合
      devices: 設(shè)備訪問
      freezer:掛起或恢復(fù)任務(wù)
      memeory:內(nèi)存用量及報(bào)告
      perf_event:對cgroup中的任務(wù)進(jìn)行統(tǒng)一性能測
      net_cls:cgroup中的任務(wù)創(chuàng)建的數(shù)據(jù)報(bào)文的類別

       

       

       鏡像:靜態(tài)

       容器:動態(tài)的,有生命周期

       

      安裝docker
      依賴環(huán)境:

      • 64bits cpu
      • linux kernel 3.10+
      • linux kernel cgroups and namespaces

      最好是安裝在centos7,因?yàn)閥um的倉庫docker版本比較老,直接使用清華大學(xué)的鏡像
      配置yum源:
        # wget https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
      修改
        # sed -i 's@https://download.docker.com@https://mirrors.tuna.tsinghua.edu.cn/docker-ce@g' docker-ce.repo

      安裝
        # yum install docker-ce

      docker配置文件

       mkdir /etc/docker    #默認(rèn)不存在,需要自己創(chuàng)建
       vim /etc/docker/daemon.json   

      定義鏡像加速器:

        可以使用docker cn/阿里云加速器/中國科技大學(xué)加速器

      {
      "registry-mirrors": ["https://registry.docker-cn.com"]
      }

       

      Daemon:
      # systemctl start docker
      # docker version   #查看docker client和server 的version信息

      # docker --help

      docker 對象有images,containers,networks,volumes,plugin等對象,都可以執(zhí)行增刪改查操作。

       # docker container --help 

      # docker info #查看docker詳細(xì)信息

       

      鏡像
      # docker search nginx

         alpine:(微型發(fā)行版,小鏡像,提供基礎(chǔ)環(huán)境,不帶調(diào)試工具,不建議用在生產(chǎn)環(huán)境)

      # docker [image] pull

      # docker inspect 1e1148e4cc2c #查看鏡像的詳細(xì)信息

      容器
      docker container ls  # 列出正在運(yùn)行的容器
      docker container ls -a  # 列出所有容器,包括停止運(yùn)行的

      docker ps   等同于docker container ls 

       docker [container] run
       docker container stop 9a34a9f0e7d2
       docker container rm 9a34a9f0e7d2

      運(yùn)行容器

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

      • -t (tty)  讓docker分配一個(gè)偽終端

      • -i   交互式訪問
      • --name  容器名稱
      • --network  容器網(wǎng)絡(luò),默認(rèn)bridge。 通過docker network ls 可以查看到
      • -d  運(yùn)行在后臺

      運(yùn)行一個(gè)容器:

       # docker run -d --name web1 nginx:1.14-alpine

       # docker run --name b1 -it busybox
       / # ls
       bin dev etc home proc root sys tmp usr var

       / # httpd --help

       / # mkdir /data/html -p
       / # vi /data/html/index.html

       / # httpd -f -h /data/html/   運(yùn)行httpd

       在容器外部可以訪問該httpd服務(wù),打開另一個(gè)終端:

      # docker inspect b1  查看容器信息,容器ip

      # curl  172.17.0.2

       

      docker ps -a (docker container ls -a) 查看所有容器

      啟動已停止的容器

      docker start [OPTIONS] CONTAINER [CONTAINER...]

      Start one or more stopped containers

      Options:
      -a, --attach Attach STDOUT/STDERR and forward signals
      --detach-keys string Override the key sequence for detaching a container
      -i, --interactive Attach container's STDIN

      # docker start -a -i b1  重新啟動b1容器

      停止容器

      docker stop 

      docker kill 

      刪除容器

      docker rm b1

      進(jìn)入一個(gè)后臺啟動的容器中:

      docker attach container_name/container_id

       

      在容器中執(zhí)行命令

      docker container exec -it web1 /bin/sh

      / # ps
      PID USER TIME COMMAND
      1 root 0:00 nginx: master process nginx -g daemon off;
      6 nginx 0:00 nginx: worker process
      17 root 0:00 /bin/sh
      23 root 0:00 ps

      查看容器日志

      docker container logs 63e704e720fa

       

       

       

      Docker Images

      docker鏡像中含有啟動容器所需要的文件系統(tǒng)及其內(nèi)容,因此,其用于創(chuàng)建并啟動容器。 

      • 采用分層構(gòu)建機(jī)制,最底層為bootfs,上面是rootfs
        • bootfs:  用于系統(tǒng)引導(dǎo)的文件系統(tǒng),包括bootloader和kernel,容器啟動完成后會被卸載以節(jié)約內(nèi)存資源
        • rootfs:位于bootfs之上,表現(xiàn)為docker容器的根文件系統(tǒng);

            傳統(tǒng)模式中,系統(tǒng)啟動時(shí),內(nèi)核掛載rootfs時(shí)會首先將其掛載為只讀模式,完整性自檢完成后將其重新掛載為讀寫模式
            docker中,rootfs由內(nèi)核掛載為“只讀”模式,而后通過聯(lián)合“掛載技術(shù)”額外掛載一個(gè)“讀寫層”。

                  

       

      dockers image layer

      • 位于下層的鏡像為父鏡像(parent image),最底層的為基礎(chǔ)鏡像
      • 最上層為“可讀寫”層,其下的均為“只讀”層,如果容器被刪除,最上層的讀寫層會一并被刪除

      docker 分層鏡像

      docker分層鏡像,除了aufs,還支持btrfs,devicemapper,overlay2和vfs等

       

      Docker Registry

      啟動容器時(shí),docker daemon 會試圖從本地獲取相關(guān)鏡像,本地鏡像不存在時(shí),會從Registry中下載鏡像并保存到本地。

      Registry用于保存docker鏡像,包括鏡像的層次結(jié)構(gòu)和元數(shù)據(jù)

      分類:

      • Sponsor Registry:第三方的registry,供客戶和docker社區(qū)使用
      • Mirror Registry:第三方的registry,只讓客戶使用
      • Vendor Registry:由發(fā)布docker鏡像的供應(yīng)商提供的registry
      • Private Registry:通過設(shè)有防火墻和額外的安全層的私有實(shí)體提供的registry

      Registry(repository and index)

      Repository  

      • 由某特定的docker鏡像的所有迭代版本組成的鏡像倉庫
      • 一個(gè)Registry可以存在多個(gè)Repository
        • Repository可分為“頂層倉庫”和“用戶倉庫”
        • 用戶倉庫名稱格式為“用戶名/倉庫名”
      • 每個(gè)倉庫可以包含多個(gè)Tag(標(biāo)簽),每個(gè)標(biāo)簽對應(yīng)一個(gè)鏡像。一個(gè)鏡像可以有多個(gè)tag,一個(gè)tag只能屬于一個(gè)鏡像

      Index

      • 維護(hù)用戶賬戶、鏡像的校驗(yàn)以及公共命名空間的信息
      • 相當(dāng)于為registry提供了一個(gè)完成用戶認(rèn)證等功能的檢索接口

      docker registry中的鏡像通常由開發(fā)人員制作,而后推送至“公共”或“私有”registry上保存,公其它人員使用,例如部署到生產(chǎn)環(huán)境

       

       

      鏡像的生成途徑

      • Dockerfile    build
      • 基于容器制作   commit
      • Docker Hub automated builds

      基于容器制作鏡像

        docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

        Options:

        -a, --author string Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
        -c, --change list Apply Dockerfile instruction to the created image    改變dockerfile指令
        -m, --message string Commit message
        -p, --pause Pause container during commit (default true)

       例如:

      docker run --name b1 -it busybox   (啟動一個(gè)容器)
      / # mkdir /data/html -p
      / # vi /data/html/index.html

       

      基于容器創(chuàng)建鏡像

      docker commit -p b1    
      sha256:ae437fa992d9c8182cffcf60e382f8d15a44e26065871b447e2838421b9231a1

      docker image ls

      REPOSITORY   TAG          IMAGE ID         CREATED          SIZE
      <none>           <none>     ae437fa992d9   3 seconds ago  1.2MB

       給鏡像打標(biāo)簽

       docker tag ae437fa992d9 abao/bbox:v0.1

      docker image ls
      REPOSITORY   TAG    IMAGE ID          CREATED        SIZE
      abao/bbox       v0.1    ae437fa992d9   5 minutes ago 1.2MB

      一個(gè)鏡像可以打多個(gè)標(biāo)簽:

      docker tag abao/bbox:v0.1 abao/bbox:latest

      鏡像創(chuàng)建完成后,啟動容器查看

      docker run --name t1 -it abao/bbox:latest
      / # ls
      bin data dev etc home proc root sys tmp usr var
      / # cat data/html/index.html 

      查看鏡像詳細(xì)信息

      busybox container t1可以看到t1這個(gè)鏡像的詳細(xì)信息  

      "Cmd": [  #默認(rèn)執(zhí)行的指令,通過構(gòu)建鏡像時(shí)的-c可以更改
      "sh"
      ],

      docker commit -a "abao <abao@test.com>" -c 'CMD ["/bin/httpd","-f","-h","/data/html"]' -p b1 abao/bbox:v0.2

       

      啟動鏡像

      docker run --name t2 abao/bbox:v0.2

      可以查看到

      docker ps 

      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      ea4d55c5ad60 abao/bbox:v0.2 "/bin/httpd -f -h /d…" About a minute ago Up About a minute t2

      也可以通過curl訪問到

       

      docker push

      docker login 先

      docker push  (如果不是push到docker hub,必須先打tag,tag包含服務(wù)器地址/名稱空間/倉庫名稱:標(biāo)簽)

       

      鏡像的導(dǎo)入和導(dǎo)出

       

      主機(jī)1: 

      docker save -o myimages.gz  abao/bbox:v0.1 abao/bbox:v0.2  

      主機(jī)2:

      docker load -i myimages.gz  

       

      posted @ 2020-02-27 10:29  卡布愛學(xué)習(xí)  閱讀(335)  評論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 久久夜色精品亚洲国产av| 日韩一区二区三区不卡片| 国产精品三级黄色小视频| 欧美成人看片黄A免费看| 国产精欧美一区二区三区| 伊伊人成亚洲综合人网7777| 欧美成人一卡二卡三卡四卡| 黄瓜视频在线观看| 国产精品国语对白一区二区| 国产老熟女无套内射不卡| 久久久亚洲欧洲日产国码αv| 被灌满精子的少妇视频| 日韩无矿砖一线二线卡乱| 国产在线超清日本一本| 桂东县| 国产av仑乱内谢| 亚洲AV日韩精品久久久久| 国产精品 欧美 亚洲 制服| 激情久久av一区av二区av三区| 国产自在自线午夜精品| 亚洲丶国产丶欧美一区二区三区| 国产精品剧情亚洲二区| 国产成人午夜福利在线小电影| 日本阿v片在线播放免费| 国产美女精品一区二区三区| 99久久激情国产精品| 国产成人精品日本亚洲网站| 国产色a在线观看| 1000部拍拍拍18勿入免费视频下载 | 国产精品中文字幕视频| 河北区| 国产精品偷乱一区二区三区| 白嫩少妇无套内谢视频| 国精品无码一区二区三区在线| 性色av不卡一区二区三区| 国产首页一区二区不卡| 国产精品剧情亚洲二区| 欧美 亚洲 国产 制服 中文| 丰满少妇又爽又紧又丰满在线观看| 成人亚欧欧美激情在线观看| 亚洲最大成人美女色av|