一、什么是Docker
docker是一個開源的應用容器引擎,基于Go語言開發并遵循了Apache2.0協議開源。
docker可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然后發布到任何流行的linux服務器,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口(類iphone的App),并且容器開銷極其低。
二、為什么docker越來越受歡迎
1、容器化越來越受歡迎,因為容器是:
- 靈活:即使是最復雜的應用也可以集裝箱化。
- 輕量級:容器利用并共享主機內核。
- 可互換:您可以即時部署更新和升級。
- 便攜式:您可以在本地構建,部署到云,并在任何地方運行。
- 可擴展:您可以增加并自動分發容器副本。
- 可堆疊:您可以垂直和即時堆疊服務。
2、鏡像和容器(contalners)
通過鏡像啟動一個容器,一個鏡像是一個可執行的包,其中包括運行應用程序所需要的所有內容包含代碼,運行時間,庫、環境變量、和配置文件。
容器是鏡像的運行實例,當被運行時有鏡像狀態和用戶進程,可以使用docker ps 查看。
3、容器和虛擬機
容器是在linux上本機運行,并與其他容器共享主機的內核,它運行的一個獨立的進程,不占用其他任何可執行文件的內存,非常輕量。
虛擬機運行的是一個完成的操作系統,通過虛擬機管理程序對主機資源進行虛擬訪問,相比之下需要的資源更多。
三、掌握docker使用只需要三小時?
1、課程大綱
從微服務到Docker (第一天)
我們從常見的微服務的架構與解決方案入手,深入分析微服務的項目部署,繼而引入docker容器技術,從docker的鏡像與容器,再帶你自己搭建docker私服。讓大家今天可以快速掌握 docker相關的多方面知識。
Docker Compose多容器部署&DevOps初體驗 (第二天)
本次課程會給大家介紹docker Compose這個強大的工具,從安裝開始,到一些基本的使用,以求快速實現應用的水平擴展和負載均衡。 另外,咱們會給大家介紹DevOps思想,讓大家可以快速的接觸到它,也能夠更清楚的知道,為公大公司一定要使用DevOps?
2、課程講師
姚懷鵬 高級講師、課程研究員
簡介:擁有9年互聯網開發經驗,4年教學經驗。在從業的5年,不僅先后主導參與華為IDC、企業網盤、運營商網盤、網管備份等軟件的開發,還以架構師的身份帶領團隊參與華為網管工具Toolkit,CloudService等軟件的設計、架構。開發的工具,獲得行業眾多好評,本人也憑借出眾的技術,獲得公司“技術骨干”的榮譽稱號。
精通擅長:SpringBoot,Dubbo,SpringCloud,Docker,K8s,Istio,springMVC,redisElasticSearch,hibernate,mybatis,spring,restlet,webservice,jbpm,Lucene等j2ee技術;對大企業開發流程及項目管理經驗有獨特的理解和實施。
2、課程定位
1 所有項目部署必備之路:
1)傳統的單體項目,為了減少運維成本,需要做DevOps中的容器化部署。
2)微服務項目由于部署項目多樣性,復雜性,需要持續部署,持續發布。需要做DevOps中的容器化部署。
2 架構師容器化之路-基礎課程
這個課程是屬于容器化部署項目的基礎課程,后續還有容器編排技術k8s,網格服務istio等,但這些技術的前提都是掌握docker技術。
3、課程時長-3小時
3月7日 20:00-21:30
3月8日 20:00-21:30
4、課程目標人群
對Springcloud微服務架構有一定認識,掌握Linux常用操作的JAVA所有開發人員。
對Linux常用操作掌握的運維人員。