溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

云計算學(xué)習(xí)路線圖素材課件:Docker容器應(yīng)用場景分析

發(fā)布時間:2020-03-12 12:10:25 來源:網(wǎng)絡(luò) 閱讀:220 作者:wx5e37c11a17f34 欄目:云計算

Docker容器是一個開源的應(yīng)用容器引擎,它能夠自動執(zhí)行重復(fù)性任務(wù),例如搭建和配置開發(fā)環(huán)境,用戶可以方便地創(chuàng)建和使用容器,還可以進行版本管理、復(fù)制、分享、修改。有很多初學(xué)云計算的同學(xué)不清楚Docker容器的使用方法以及應(yīng)用場景,接下來就給大家簡單分享一下云計算學(xué)習(xí)路線圖素材課件:Docker容器應(yīng)用場景分析。

Docker是一個使用 Go 語言開發(fā)的,并且開源的應(yīng)用容器引擎,基于LXC(Linux Container)內(nèi)核虛擬化技術(shù)實現(xiàn),提供一系列更強的功能,比如鏡像、Dockerfile等;

Docker理念是將應(yīng)用及依賴包打包到一個可移植的容器中,可發(fā)布到任意Linux發(fā)行版的Docker引擎上,使用沙箱機制運行程序,程序之間相互隔離;

Docker采用C/S架構(gòu),Dcoker daemon作為服務(wù)端接受來自客戶端請求,并處理這些請求,比如創(chuàng)建、運行容器等;客戶端為用戶提供一系列指令與Docker Daemon交互;

Docker使用Google公司推出的Go語言進行開發(fā)實現(xiàn),基于Linux內(nèi)核的cgroup、namespace以及AUFS類的UnionFS等技術(shù),對進程進行封裝隔離,屬于操作系統(tǒng)層面的虛擬化技術(shù)。目前Docker容器的應(yīng)用場景包括以下幾種:

Docker部署Mongodb環(huán)境

1、遠程獲取Mongodb鏡像

docker pull mongo

2、創(chuàng)建一個docker容器

docker run -p 27017:27017 -v /data/db --name docker_mongodb -d mongo

在上面的命令中,幾個命令參數(shù)的詳細解釋如下:

-p 指定容器的端口映射(特殊說明:前面的是本機端口,后面的是容器的端口,添加-p參數(shù)主動將容器內(nèi)部端口給暴漏出來,將服務(wù)器的27017端口映射到容器的27017端口,這樣在外網(wǎng)就可通過 服務(wù)器的27017端口訪問到我們的服務(wù),Mongodb默認端口為27017。

-v 為設(shè)置容器的掛載目錄,這里是將即本機中的目錄掛載到容器中的/data/db中,作為Mongodb的存儲目錄

--name 為設(shè)置該容器的名稱

-d 設(shè)置容器以守護進程方式運行

3、測試連接容器中的Mongodb

Docker部署Node項目完整流程(DockerFile實踐)

1、使用Koa2初始化一個Node項目,通過Mongose中間件連接Mogodb數(shù)據(jù)庫,實現(xiàn)一個基礎(chǔ)接口Mogodb插入數(shù)據(jù)。

2、在項目根目錄下創(chuàng)建.dockerignore文件,把不需要打包進Docker Image里的文件進行過濾:

/usr/src/nodejs/dockerstudy/.dockerignore

.git

node_modules

3、在項目的根目錄中創(chuàng)建Dockerfile文件,部署Node項目的時候,會有一個Dockerfile 文件配置。

/usr/src/nodejs/hello-docker/Dockerfile

FROM node:10.0

在容器中創(chuàng)建一個目錄

RUN mkdir -p /usr/src/nodejs/

定位到容器的工作目錄

WORKDIR /usr/src/nodejs/

RUN/COPY 是分層的,package.json 提前,只要沒修改,就不會重新安裝包

COPY package.json /usr/src/app/package.json

RUN cd /usr/src/app/

RUN npm i

把當(dāng)前目錄下的所有文件拷貝到 Image 的 /usr/src/nodejs/ 目錄下

COPY . /usr/src/nodejs/

EXPOSE 3000

CMD npm start

4、代碼環(huán)節(jié)暫且告一段落,將帶有Dockerfile提交到github或gitlab等。

5、首先檢出代碼,把項目克隆到指定目錄。

6、進入目錄構(gòu)建。

7、通過鏡像dockerstudy創(chuàng)建一個容器并運行。

8、進入容器。

9、日志檢查查看運行日志。

優(yōu)雅部署方式 DockerCompose

Compose是Docker官方開源的一個項目,可以管理多個Docker容器組成一個應(yīng)用,例如Web服務(wù),除了服務(wù)本身還有數(shù)據(jù)庫、Redis、Nginx等一系列相關(guān)聯(lián)服務(wù)需要安裝。有個Compose的支持,我們只需要定義一個YAML格式的配置文件(docker-compose.yml),來編寫一個項目所需要的多個容器配置及調(diào)用關(guān)系,通過簡單的命令即可同時開始或者關(guān)閉這些容器。Compose定位是定義和運行多個Docker容器的應(yīng)用。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI