摘要:一般而已,包含四部分信息,基礎鏡像信息,維護者信息,鏡像操作命令,和容器啟動時執行命令。創建容器使用創建的容器處于停止狀態,可以使用來啟動。目前官方維護了一個公共倉庫其中已經包含了多個鏡像。
什么是docker
docker是基于go語言實現的云計算開源項目。其主要目標是“Build,Ship and Run Any App, Anywhere”,即通過對應用組件的封裝,分發,部署,運行等生命周期的管理,達到應用組件級的“一次封裝,到處運行”。
docker的優勢高效的構建應用。docker通過容器來打包應用,在遷移的時候只需要在新的服務器上啟動需要的容器就可以了,這無疑將節省大量的寶貴時間,并降低部署過程中出現的風險。
高效的資源利用。docker容器對系統資源的需求很少,一臺主機上可以運行數千個docker容器。
更簡單的更新管理。使用Dockerfile來支持靈活的自動化創建和部署機制,可以極大的提高工作效率。
更加輕松的遷移和擴展。
docker核心概念 Dcoker鏡像docker鏡像類似虛擬機鏡像,包含了文件系統。鏡像是創建docker容器的基礎。我們可以通過下面的命令從默認鏡像倉庫,即Docker Hub公共注冊服務器中的倉庫,下載鏡像。
dcoker pull node
當下載完成后可以通過
dcoker images命令查看本地的鏡像列表創建鏡像
創建docker鏡像有三種方式:基于已有鏡像的容器創建,基于本地模版導入,基于Dockerfile創建。
1.基于已有鏡像容器創建
docker commit -m "test" -a "auth" ID name
commit命令提交為一個新的鏡像。提交時可以使用ID或者名稱來指定容器。
2.使用Dockerfile創建鏡像
Dockerfile是一個文本格式的配置文件,用戶可以通過Dockerfile快速創建自己的自定義鏡像。一般而已,Dockerfile包含四部分信息,基礎鏡像信息,維護者信息,鏡像操作命令,和容器啟動時執行命令。例如:
# This dockerfile user node image # VERSION 1.0 # Author: XXX # 第一行必須指定基于的基礎鏡像 FROM node:4.2.2 # 操作命令 ENV NODE_ENV test RUN npm i -g npm@3.5.4 WORKDIR /data/app COPY ./package.json /data/app/ RUN npm install COPY ./dist /data/app/ EXPOSE 8050 # 容器啟動時執行的命令 CMD ["node", "/data/app/app.js"]存出與載入鏡像
存出鏡像
docker save -o target_name image_name
載入鏡像
docker load --input image_nameDocker容器
docker利用容器來運行和隔離應用。是從鏡像創建的應用運行實例,我們可以從同一個鏡像創建多個不同的容器,而這些容器都是相互獨立,互不可見的。
創建容器docker create -it image_name
使用docker create創建的容器處于停止狀態,可以使用docker start來啟動。
創建并啟動容器docker run
該命令等價于先執行docker create 再執行docker start
進入容器docker attach
在使用attach命令的時候會有很多不便,當多個窗口同時attach到同一個容器的時候,所有的窗口都會同步顯示。當其中的一個窗口因命令阻塞時,其他窗口也就無法繼續執行操作了。
導出容器docker export containerId > target_name
可將這些文件傳到其他機器上,再通過導入命令實現容器的遷移。
導入容器docker import fileDocker倉庫
docker倉庫類似于代碼倉庫,是docker集中存放鏡像文件的地方。與之容易混攪的是注冊服務器,注冊服務器是存放倉庫的具體服務器,每個服務器上可以有多個倉庫,每個倉庫里又可以有多個鏡像。例如對于倉庫地址dl.dockerpool.com/ubuntu來說
dl.dockerpool.com是注冊服務器地址,ubuntu是倉庫名。目前Docker官方維護了一個公共倉庫https://hub.docker.com,其中已經包含了15000多個鏡像。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26666.html
摘要:初識是什么是一個開源的應用容器引擎,基于語言并遵從協議開源。容器是完全使用沙箱機制,相互之間不會有任何接口更重要的是容器性能開銷極低。命令為,如下由此可知,我們新打包的鏡像的為。登錄賬號再輸入自己的賬號密碼即可。 初識Docker Docker是什么? ??Docker 是一個開源的應用容器引擎,基于?Go 語言并遵從Apache2.0協議開源。??Docker 可以讓開發者打包他們的...
摘要:至于很具體的操作指令,比如怎么安裝,怎么和來跑一個簡單的,請參考官方文檔部分的或者也可參考文末的一些參考資料參考資料官方文檔入門教程系列簡明教程使用演示中文系列資源從入門到實踐作者更多文章個人網站 docker入門概覽 標簽 : docker [TOC] 本文對docker進行大致介紹,包括概述,安裝,簡單使用,架構,基本原理等方面 寫在前面 本文是自己學習docker的一個記錄...
摘要:入門系列之一在一個容器里運行指定的應用入門系列之二使用制作包含指定應用的鏡像本文我們會介紹如何將這個本地制作好的鏡像發布到,讓全世界其他愛好者能夠使用您的鏡像。首先您得在上注冊一個帳號然后創建一個新的,用于存放鏡像。 這個系列的前兩篇文章,我們已經把我們的應用成功地在Docker里通過nginx運行了起來,并且用dockerfile里制作好了一個鏡像。 Docker入門系列之一:在一...
摘要:從命名上就知道這是一篇簡單粗暴的新手入門教程,為什么要簡單粗暴我認為有自學能力的人幫他入門就夠了,不能自學的一時半會兒也教不會,不符合入門教程的初衷,建議出門左拐去找找視頻教程本章目標大概了解是個什么玩意知道常用的指令參數能啟動一個容器不然 從命名上就知道這是一篇簡單粗暴的docker新手入門教程, 為什么要簡單粗暴? 我認為有自學能力的人幫他入門就夠了, 不能自學的一時半會兒也教不會...
摘要:前言其實接觸也有一段時間了,但是一直沒有做下總結,現在網上關于的介紹也有很多了,本著好記性不如爛筆頭的原則,還是自己再記錄一波吧。實現目標安裝探索基本概念及用法環境準備位,內核版本不低于安裝以下命令均需在權限下執行。 showImg(https://segmentfault.com/img/remote/1460000017894270?w=538&h=344); 前言 其實接觸 do...
摘要:原文地址零基礎入門指南一介紹簡介源代碼托管在上,公司開源的一個基于技術之上構建的容器引擎,基于語言并遵從協議開源。通過等實現內核虛擬化技術,并提供容器的資源隔離與安全保障等。 原文地址:Docker零基礎入門指南(一):Docker介紹 Docker簡介 Docker源代碼托管在 GitHub上,Docker 公司開源的一個基于LXC技術之上構建的Container容器引擎,基于Go...
閱讀 1883·2021-11-22 09:34
閱讀 3010·2021-09-28 09:35
閱讀 13374·2021-09-09 11:34
閱讀 3594·2019-08-29 16:25
閱讀 2820·2019-08-29 15:23
閱讀 2035·2019-08-28 17:55
閱讀 2424·2019-08-26 17:04
閱讀 3044·2019-08-26 12:21