<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 第二節 Docker - Namespace資源隔離 Docker這么火,喜歡技術的朋友可能也會想,如果要自己實現一個資源隔離的容器,應該從哪些方面下手呢?也許你第一反應可能就是chroot命令,這條命令給用戶最直觀的感覺就是使用后根目錄/的掛載點切換了,即文件系統被隔離了。然后,為了在分布式的環境下進行通信和定位,容器必然需要一個獨立的IP、端口、路由等等,自然就想到了網絡的隔離。同時,你的容器還需要一個獨立的主機名以便在網絡中標識自己。想到網絡,順其自然就想到通信,也就想到了進程間通信的隔離。可能你也想到了權限的問題,對用戶和用戶組的隔離就實現了用戶權限的隔離。最后,運行在容器中的應用需要有自己的PID,自然也需要與宿主機中的PID進行隔離。 由此,我們基本上完成了一個容器所需要做的六項隔離,Linux內核中就提供了這六種namespace隔離的系統調用,如下表所示。 Namespace |系統調用參數 | 隔離內容 ---|---|--- UTS |CLONE_NEWUTS|主機名與域名 IPC| CLONE_NEWIPC | 信號量、消息隊列和共享內存 PID |CLONE_NEWPID|進程編號 Network|CLONE_NEWNET|網絡設備、網絡棧、端口等等 Mount|CLONE_NEWNS|掛載點(文件系統) User|CLONE_NEWUSER|用戶和用戶組 實際上,Linux內核實現namespace的主要目的就是為了實現輕量級虛擬化(容器)服務。在同一個namespace下的進程可以感知彼此的變化,而對外界的進程一無所知。這樣就可以讓容器中的進程產生錯覺,仿佛自己置身于一個獨立的系統環境中,以此達到獨立和隔離的目的。 需要說明的是,本文所討論的namespace實現針對的均是Linux內核3.8及其以后的版本。 # docker 生產部署安裝 ### Remove unofficial Docker packages $ sudo yum -y remove docker docker-common container-selinux $ sudo yum -y remove docker-selinux ### Install using the repository sudo yum install -y yum-utils ### Use the following command to set up the stable repository: $ sudo yum-config-manager \ --add-repo \ https://docs.docker.com/engine/installation/linux/repo_files/centos/docker.repo ### Install Docker sudo yum makecache fast # Configuring Docker > > 使用OverlayFS來作為默認的存儲系統,首先要升級到CentOS7.2(或者使用linux內核3.18版本以上),有一個XFS的Bug在7.2系統被修復了。 ### 升級kernel-4.10 相對于手動檔編譯安裝,CentOS 還可以通過使用 elrepo 源的方式直接安裝最新穩定版 kernel,腳本如下 ### import key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ### install elrepo repo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm ### install kernel yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y ### modify grub grub2-set-default 0 ### reboot reboot ### 將OverlayFS加到module目錄下 echo "overlay" > /etc/modules-load.d/overlay.conf ### reboot 系統,執行lsmod看時候看到overlay lsmod | grep over overlay 42451 0 ### 或者使用modprobe命令加載模塊 modprobe overlay ### 配置Docker Daemon用OverlayFS啟動 ### Create the /etc/systemd/system/docker.service.d directory. sudo mkdir /etc/systemd/system/docker.service.d ### Create a /etc/systemd/system/docker.service.d/docker.conf file vi /etc/systemd/system/docker.service.d/docker.conf [Service] ExecStart= ExecStart=/usr/bin/dockerd --graph=/data/docker --registry-mirror=https://xu0kv3y6.mirror.aliyuncs.com -D -H tcp://0.0.0.0:4243 --host=unix:///var/run/docker.sock --storage-driver=overlay --insecure-registry=harbor-demo.ttlinux.com.cn ### 啟動參數說明 - --graph=/data/docker 鏡像存儲路徑 - --registry-mirror=https://xu0kv3y6.mirror.aliyuncs.com 添加阿里云鏡像地址 - --insecure-registry=harbor.ttlinux.com.cn 私有倉庫地址 - -D 后臺運行模式 - -H tcp://0.0.0.0:4243 TCP 監聽地址 - --storage-driver=overlay 使用overlay存儲驅動 ### Flush changes. sudo systemctl daemon-reload ### Restart the docker daemon. sudo systemctl restart docker
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看