<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          極速上手使用Docker,這篇文章就夠了!

          共 5244字,需瀏覽 11分鐘

           ·

          2021-03-11 13:00

          Docker是一個提供集中式平臺來執(zhí)行應用程序的軟件。它將軟件包裝成一個完整的標準化單元,其中包含所有要運行的內(nèi)容。無論是代碼,運行時環(huán)境,工具還是程序庫。它保證軟件能始終按預期那樣運行。它提供了一種稱為容器的隔離環(huán)境中運行應用程序的功能。我們可以在主機上同時運行多個容器。并且它是輕量級的,可以立即啟動并使用較少的內(nèi)存。很安全,每個容器彼此分離。本文將帶大家了解如何使用Docker,從而為我們的生產(chǎn)效率得到提升。



          01


          Docker使用前提



          1

          環(huán)境要求


          在此之前我們需要查看環(huán)境是否符合要求(機器必須是64位,linux的版本必須大于等于3.10)


          $ uname -r



          02


          Docker的安裝



          2

          安裝步驟


          2.1

          Docker要求CentOS系統(tǒng)的內(nèi)核版本高于3.10,查看前提條件驗證你的CentOS版本是否支持Docker。通過uname -r 命令查看你當前的內(nèi)核版本


          $ uname -r


          2.2

          使用root權限登錄CentOS。確保yum包更新到最新。


          $ sudo yum update


          2.3

          卸載舊版本(如果安裝過舊版本的話)


          $ sudo yum remove docker docker-common docker-selinux docker-engine


          2.4

          安裝需要的軟件包,yum-util提供yum-config-manager,另外兩個是devicemapper驅(qū)動依賴的


          $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2


          2.5

          設置yum源


          $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo



          2.6

          可以查看所有倉庫中所有docker版本,并選擇特定版本安裝


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



          2.7

          安裝docker


          $ sudo yum install docker-ce #由于repo中默認只開啟stable倉庫,故這里安裝的是最新穩(wěn)定版17.12.0
          $ sudo yum install <FQPN> # 例如:sudo yum install docker-ce-17.12.0.ce



          2.8

          啟動并加入開機啟動


          $ sudo systemctl start docker
          $ sudo systemctl enable docker


          2.9

          驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)


          $ docker version


          注意

          因為之前安裝過舊版本的docker,在安裝的時候報錯如下:


          Transaction check error:
            file /usr/bin/docker from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
            file /usr/bin/docker-containerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
            file /usr/bin/docker-containerd-shim from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
            file /usr/bin/dockerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64


          卸載舊版本的包


          $ sudo yum erase docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64


           

          再次安裝docker


          $ sudo yum install docker-ce



          03


          Docker的使用



          3

          使用流程


          3.1 從倉庫中獲取鏡像(國外去下載)


          docker pull centos:6.6


          3.2 從國外的鏡像上下載


          docker pull daocloud.io/centos:6.6


          3.3 查看鏡像


          docker images


          3.4 鏡像的搜索


          docker search centos


          3.5 鏡像的創(chuàng)建


          docker commit  / docker build 和Dockerfile 來創(chuàng)建

              3.5.1:通過commit來創(chuàng)建(運行剛剛下載的鏡像)
              docker run -it 鏡像名字 /bin/bash
              eg: docker run -it centos:6.6 /bin/bash

              3.5.2:在centos中安裝tar 并提交
               docker run -it centos:6.6 /bin/bash
               yum install tar
              docker commit 實例的名字 自己的取的名字:6.6
              docker ps -a :查看當前正在運行的實例
              docker images

            3.5.3:查看鏡像的詳情信息
            docker inspect 鏡像的id

            3.5.4:刪除鏡像
            docker rmi --force 鏡像id 強制刪除某一個鏡像

            3.5.5:刪除容器
            docker rm 容器id



          04


          創(chuàng)建鏡像(Dockerfile)



          4

          創(chuàng)建鏡像


          4.1 準備環(huán)境


          4.1.1:將Tomcat和jdk拷貝到/usr/local/docker-content中
                 
                  4.1.2:解壓文件
                   
                       tar -zxvf ....


          4.2 創(chuàng)建Dockerfile文件


          FROM centos:6.6

          #
          copy file

          RUN mkdir -p /home/demo

          ADD ./jdk-8u20-linux-x64.gz /home/demo
          ADD ./apache-tomcat-9.0.10.tar.gz /home/demo


          ENV JAVA_HOME /home/demo/jdk1.8.0_20
          ENV PATH $JAVA_HOME/bin:$PATH
          ENV LANG en_us.UTF-8


          #
          EXPOSE
          EXPOSE 8080

          #
          init tomcat

          ENTRYPOINT /home/demo/apache-tomcat-9.0.10/bin/startup.sh && tail -f /home/demo/apache-tomcat-9.0.10/logs/catalina.out


          4.3 創(chuàng)建鏡像


          docker build -t centostj:1.0 .


          4.4 測試鏡像是否創(chuàng)建成功


          docker images


          4.5 運行這個鏡像


          docker run -it  -p 8080  centostj:1.0 /bin/bash


          4.6 查看端口的綁定


          docker ps -a



          05


          鏡像的載入與導出



          5

          鏡像的載入與導出


          5.1 導出容器(export)

          docker export 實例的id  > xxx.tar
                   eg:docker export 0c1d5677294c > back.tar


          5.2 導入容器


          cat back.tar | docker import - centostj:v1.0


          5.3 使用save導出容器


          docker save centostj > back1.tar   中間那個是鏡像的名字


          5.4 使用load導入鏡像


          docker load  < docker-seelight.tar


          docker logs 容器的id 或者 名字 查看使用過的命令

             將鏡像上的端口映射到物理機器上

                1:docker run -d -p 5000(表示的是物理機器上的端口):5000(鏡像上的這個端口) 鏡像的名字 要運行的這個程序

             docker ps -l :查看最后一次創(chuàng)建的這個容器

             進入這個容器的方法:docker exec -it 95c133b8dce9 /bin/bash

             docker cp 將外面的cp到里面去 docker cp /www/runoob 96f7f14e99ab:/www


             docker stop 容器id:表示的是停止一個容器

             docker cp 本地文件路徑 ID全稱:容器路徑 上傳本地文件到docker中


          希望這篇文章能對還沒接觸過容器化部署的小伙伴起到幫助,后續(xù)會更新Docker系列更多文章,謝謝大家支持!



          瀏覽 52
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美性猛交XXXX免费看久久久 | 很很操很很干 | 无码视频在线免费播放 | 天堂男人资源网 | 2020成人影院 |