首頁>Club>
大家各抒己見
2
回覆列表
  • 1 # 楓碼

    一、Docker介紹和使用場景

    1、什麼是Dokcer

    一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,

    也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面;使⽤用go語⾔言編寫,在LCX(linux容器器)基礎上進行封裝。

    簡單來說:

    1)就是可以快速部署啟動應用

    2)實現虛擬化,完整資源隔離

    3)一次編寫,四處執行(有一定的限制,比如Docker是基於Linux 64bit的,無法在32bit的linux/Windows/unix環境下使用)

    2、為什麼要用Docker

    1)提供一次性的環境,假如需要安裝MySQL,則需要安裝很多依賴庫、版本等,如果使用Docker則透過映象就可以直接啟動執行

    2)快速動態擴容,使用docker部署了一個應用,可以製作成映象,然後透過Dokcer快速啟動。

    3)組建微服務架構,可以在一個機器上模擬出多個微服務,啟動多個應用。

    4)更好的資源隔離和共享

    一句話:開箱即用,快速部署,可移植性強,環境隔離。

    二、Linux雲伺服器器Centos7安裝Docker

    1、新增yum源

    # yum install epel-release –y

    # yum clean all

    # yum list

    2、安裝並執行Docker

    # yum install docker-io –y

    # systemctl start docker

    3、檢查安裝結果

    # docker info

    4、管理Docker守護程序

    # systemctl start docker #執行Docker守護程序

    # systemctl stop docker #停止Docker守護程序

    # systemctl restart docker #重啟Docker守護程序

    三、Docker倉庫、映象、容器器核心知識

    1、Docker映象 (Docker images):容器器運⾏行行時的只讀模板,作業系統+軟體運⾏行行環境+⽤使用者程式

    2、Docker容器(Docker containers):容器器包含了某個應用執行所需要的全部環境

    3、Docker倉庫 (Docker registeries):用來儲存映象,有公有和私有倉庫,好比Maven的中央倉庫和本地私服。

    四、Docker容器命令

    1、搜尋映象:docker search xxx(映象名稱)

    2、列出當前系統存在的映象:docker images

    3、拉取映象:docker pull xxx

    xxx是具體某個映象名稱(格式 REPOSITORY:TAG)

    REPOSITORY:表示映象的倉庫源,TAG:映象的標籤

    4、執行一個容器:docker run -d --name "fengma_mq" -p 5672:5672 -p 15672:15672 rabbitmq:management

    docker run: 執行一個容器

    -d: 後臺執行

    -p: 埠對映

    rabbitmq:management (格式 REPOSITORY:TAG),如果不指定tag,預設使⽤用最新的。

    --name "xxx": 容器名稱

    5、列舉當前執行的容器:docker ps

    6、檢查容器內部資訊:docker inspect 容器名稱

    強制移除映象不管是否有容器使用該映象 增加 -f 引數。

    8、停止某個容器:docker stop 容器名稱

    9、啟動某個容器:docker start 容器名稱

    10、移除某個容器: docker rm 容器名稱 (容器必須是停止狀態)

    五、使用Docker部署Nginx伺服器

    1、獲取映象 (首先會從本地找映象,如果有則直接啟動,沒有的話,從映象倉庫拉起,再啟動)

    docker search nignx

    2、列舉映象:docker images

    3、拉取映象: docker pull nignx

    4、啟動多個容器例項

    docker run -d --name "fengma_nginx1" -p 8088:80 nginx

    docker run -d --name "fengma_nginx2" -p 8089:80 nginx

    docker run -d --name "fengma_nginx3" -p 8090:80 nginx

    六、公司中Docker映象倉庫使用

    1、為啥要用映象倉庫

    2、官方公共映象倉庫和私有映象倉庫

    公共映象倉庫,官方:https://hub.docker.com/,基於各個軟體開發或者有軟體提供商開發的

    非官方:其他組織或者公司開發的映象,供大家免費試用

    私有映象倉庫:用於存放公司內部的映象,不提供給外部試用。

    七、構建自己的映象倉庫(使用阿里雲搭建自己的映象倉庫)

    1、阿里雲映象倉庫:https://dev.aliyun.com/search.html

    2、登入: docker login --username=使用者名稱 registry.cnshenzhen.aliyuncs.com(選擇自己位置)

    3、推送本地映象:docker tag [ImageId] registry.cnshenzhen.aliyuncs.com/fengma/fengma_images:[映象版本號]

    例子:

    docker tag 2f415b0e9a6e registry.cnshenzhen.aliyuncs.com/fengma/fengma_images:rabbitmq-v1.0.2

    docker push registry.cnshenzhen.aliyuncs.com/fengma/fengma_images:rabbitmq-v1.0.2

    4、拉取映象(線上伺服器拉取映象)

    docker login --username=使用者名稱 registry.cn-shenzhen.aliyuncs.com

    docker pull registry.cnshenzhen.aliyuncs.com/fengma/fengma_images:rabbitmq-v1.0.2

    5、啟動容器

    docker run -d --name "fengma_mq" -p 5672:5672 -p 15672:15672 2f415b0e9a6e

  • 中秋節和大豐收的關聯?
  • 面對孩子說謊,如何提升孩子的誠實度?