雲端計算學習路線圖素材課件:Docker容器應用場景分析
Docker容器是一個開源的應用容器引擎,它能夠自動執行重複性任務,例如搭建和配置開發環境,使用者可以方便地建立和使用容器,還可以進行版本管理、複製、分享、修改。有很多初學雲端計算的同學不清楚Docker容器的使用方法以及應用場景,接下來就給大家簡單分享一下雲端計算學習路線圖素材課件:Docker容器應用場景分析。
Docker是一個使用 Go 語言開發的,並且開源的應用容器引擎,基於LXC(Linux Container)核心虛擬化技術實現,提供一系列更強的功能,比如映象、Dockerfile等;
Docker理念是將應用及依賴包打包到一個可移植的容器中,可釋出到任意Linux發行版的Docker引擎上,使用沙箱機制執行程式,程式之間相互隔離;
Docker採用C/S架構,Dcoker daemon作為服務端接受來自客戶端請求,並處理這些請求,比如建立、執行容器等;客戶端為使用者提供一系列指令與Docker Daemon互動;
Docker使用Google公司推出的Go語言進行開發實現,基於Linux核心的cgroup、namespace以及AUFS類的UnionFS等技術,對程式進行封裝隔離,屬於作業系統層面的虛擬化技術。目前Docker容器的應用場景包括以下幾種:
Docker部署Mongodb環境
1、遠端獲取Mongodb映象
docker pull mongo
2、建立一個docker容器
docker run -p 27017:27017 -v /data/db --name docker_mongodb -d mongo
在上面的命令中,幾個命令引數的詳細解釋如下:
-p 指定容器的埠對映(特殊說明:前面的是本機埠,後面的是容器的埠,新增-p引數主動將容器內部埠給暴漏出來,將伺服器的27017埠對映到容器的27017埠,這樣在外網就可透過 伺服器的27017埠訪問到我們的服務,Mongodb預設埠為27017。
-v 為設定容器的掛載目錄,這裡是將即本機中的目錄掛載到容器中的/data/db中,作為Mongodb的儲存目錄
--name 為設定該容器的名稱
-d 設定容器以守護程式方式執行
3、測試連線容器中的Mongodb
Docker部署Node專案完整流程(DockerFile實踐)
1、使用Koa2初始化一個Node專案,透過Mongose中介軟體連線Mogodb資料庫,實現一個基礎介面Mogodb插入資料。
2、在專案根目錄下建立.dockerignore檔案,把不需要打包進Docker Image裡的檔案進行過濾:
# /usr/src/nodejs/dockerstudy/.dockerignore
.git
node_modules
3、在專案的根目錄中建立Dockerfile檔案,部署Node專案的時候,會有一個Dockerfile 檔案配置。
# /usr/src/nodejs/hello-docker/Dockerfile
FROM node:10.0
# 在容器中建立一個目錄
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
# 把當前目錄下的所有檔案複製到 Image 的 /usr/src/nodejs/ 目錄下
COPY . /usr/src/nodejs/
EXPOSE 3000
CMD npm start
4、程式碼環節暫且告一段落,將帶有Dockerfile提交到github或gitlab等。
5、首先檢出程式碼,把專案克隆到指定目錄。
6、進入目錄構建。
7、透過映象dockerstudy建立一個容器並執行。
8、進入容器。
9、日誌檢查檢視執行日誌。
優雅部署方式 DockerCompose
Compose是Docker官方開源的一個專案,可以管理多個Docker容器組成一個應用,例如Web服務,除了服務本身還有資料庫、Redis、Nginx等一系列相關聯服務需要安裝。有個Compose的支援,我們只需要定義一個YAML格式的配置檔案(docker-compose.yml),來編寫一個專案所需要的多個容器配置及呼叫關係,透過簡單的命令即可同時開始或者關閉這些容器。Compose定位是定義和執行多個Docker容器的應用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2674571/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 雲端計算學習路線圖素材、課件,TIMESTAMPADD知識點
- 雲端計算學習路線圖素材課件:雲端計算常用的開源工具開源工具
- 雲端計算學習路線圖課件:學Docker容器怎樣快速入門?Docker
- 雲端計算學習路線圖素材課件:DevOps和雲端計算之間的關係dev
- 雲端計算進階學習路線圖課件:Docker容器的四種網路模式Docker模式
- 雲端計算學習路線圖素材、課件, join之間的區別
- 雲端計算學習路線圖素材、課件,msyql中CASE WHEN語法
- 雲端計算學習路線圖素材、課件,mysql中函式的用法MySql函式
- 雲端計算學習路線圖素材、課件,CASE搜尋函式語法函式
- 雲端計算學習路線圖素材、課件,CASE的其他用法講解
- 雲端計算學習路線圖素材、課件,什麼是雲端計算的核心技術基礎?
- 雲端計算學習路線圖素材課件,Linux中軟體安裝的方式Linux
- 雲端計算學習路線圖素材課件:Linux效能最佳化IO子系統Linux
- 雲端計算學習路線圖課件:多雲的管理方法
- 雲端計算素材、課件:雲端計算可以做什麼用?
- 雲端計算學習素材框架,msyql查詢操作課件框架
- 雲端計算學習素材框架,msyql高階操作課件框架
- 雲端計算學習路線圖課件:雲端計算中的常見的雲配置錯誤
- 雲端計算學習路線圖課件:Kubernetes知識點詳解
- 雲端計算學習素材、課件,msyql知識點講解
- 雲端計算學習路線教程大綱課件:LVM管理LVM
- 雲端計算學習路線教程大綱課件:FTP ServerFTPServer
- 雲端計算學習路線教程大綱課件:雲端計算開發程式設計條件結構程式設計
- 雲端計算學習路線教程大綱課件:使用自建源
- 雲端計算學習路線教程大綱課件:關於NFSNFS
- 雲端計算學習素材、課件,大資料和雲端計算的關係是什麼?大資料
- 雲端計算學習路線教程大綱課件:客戶端查詢客戶端
- 雲端計算學習路線教程大綱課件:網路管理基礎
- 雲端計算學習路線教程大綱課件:磁碟陣列 RAID陣列AI
- 雲端計算學習路線教程大綱課件:檔案連結
- 雲端計算學習路線教程大綱課件:關於HTTP ServerHTTPServer
- 小白怎麼學習雲端計算?2020最新雲端計算學習路線圖
- 學習雲端計算有哪些優勢?雲端計算教程學習路線圖
- 雲端計算影片教程:2020年雲端計算學習路線圖
- 雲端計算學習路線教程大綱課件:XFS檔案系統
- 雲端計算學習路線教程大綱課件:Mount 掛載詳解
- 雲端計算學習路線教程大綱課件:FAT檔案系統
- 雲端計算學習路線教程大綱課件:Linux新手入門教程Linux