Docker是在2013年發布的,原始碼託管在Github上,基於go語言並遵從Apache2.0協議開源,是PaaS提供者dotCloud開源的一個基於LXC的高級容器引擎,是一種用容器輕鬆建立、部署和運行應用程式的工具。
本教學操作環境:linux7.3系統、docker-1.13.1版、Dell G3電腦。
docker是什麼時候出來的
Docker 是一種運行於 Linux 和 Windows 上的軟體,用於建立、管理和編排容器。
Docker 是 GitHub 上開發的 Moby 開源專案的一部分。
Docker 公司,位於舊金山,是整個 Moby 開源專案的維護者。 Docker 公司也提供包含支援服務的商業版本的 Docker。
Docker公司
Docker 公司位於舊金山,由法裔美籍開發者和企業家 Solumon Hykes 創立,其標誌如下圖所示。
Docker標誌
有意思的是,Docker 公司起初是一家名為dotCloud 的平台即服務(Platform-as-a-Service, PaaS)提供者。
底層技術上,dotCloud 平台利用了 Linux 容器技術。為了方便建立和管理這些容器,dotCloud 開發了一套內部工具,之後被命名為「Docker」。 Docker就是這樣誕生的!
2013年,dotCloud 的 PaaS 業務並不景氣,公司需要尋求新的突破。於是他們聘請了 Ben Golub 作為新的 CEO,將公司重命名為“Docker”,放棄dotCloud PaaS 平台,懷抱著“將 Docker 和容器技術推向全世界”的使命,開啟了一段新的征程。
如今 Docker 公司被普遍認為是一家創新科技公司,據說其市場價值約為 10 億美元。 Docker 公司已經透過多輪融資,吸收了來自矽谷的幾家創投公司的累計超過 2.4 億美元的投資。
幾乎所有的融資都發生在公司更名為「Docker」之後。
提示:「Docker」一詞來自英國口語,意思是碼頭工人(Dock Worker),也就是從船上裝卸貨物的人。
Docker 運行時與編排引擎
多數技術人員在談到 Docker 時,主要是指 Docker 引擎。
Docker 引擎是用來運作和編排容器的基礎架構工具。有 VMware 管理經驗的讀者可以類比為 ESXi。
ESXi 是運行虛擬機器的核心管理程序,而 Docker 引擎是運行容器的核心容器執行時間。
其他 Docker 公司或第三方的產品都是圍繞著 Docker 引擎進行開發和整合的。
如下圖所示,Docker 引擎位於中心,其他產品則基於 Docker 引擎的核心功能進行整合。
圍繞Docker引擎進行開發和整合的產品
Docker 引擎可以從 Docker 網站下載,也可以基於 GitHub 上的原始碼進行建置。無論是開源版本還是商業版本,都有 Linux 和 Windows 版本。
Docker 引擎主要有兩個版本:企業版(EE)和社群版(CE)。
每個季度,企業版和社群版都會發布一個穩定版本。社群版本會提供 4 個月的支持,而企業版本會提供 12 個月的支援。
透過 Edge 方式發布月度版。
從 2017 年第一季開始,Docker 版本號遵循 YY.MM-xx 格式,類似於 Ubuntu 等專案。例如,2018 年 6 月第一次發布的社群版本為 18.06.0-ce。
推薦學習:《docker影片教學》
以上是docker是什麼時候出來的的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Docker和Kubernetes是现代软件开发和部署的关键工具。Docker通过容器化简化应用打包和部署,Kubernetes则用于大规模容器编排和管理。使用Docker和Kubernetes可以显著提升应用的可扩展性和管理效率。

Docker利用Linux內核特性,提供高效、隔離的應用運行環境。其工作原理如下:1. 鏡像作為只讀模板,包含運行應用所需的一切;2. 聯合文件系統(UnionFS)層疊多個文件系統,只存儲差異部分,節省空間並加快速度;3. 守護進程管理鏡像和容器,客戶端用於交互;4. Namespaces和cgroups實現容器隔離和資源限制;5. 多種網絡模式支持容器互聯。理解這些核心概念,才能更好地利用Docker。

LXC是Docker的基礎,通過Linux內核的cgroups和namespaces實現資源和環境隔離。 1)資源隔離:cgroups限制CPU、內存等資源。 2)環境隔離:namespaces提供獨立的進程、網絡、文件系統視圖。

在Linux上使用Docker的最佳實踐包括:1.使用dockerrun命令創建和運行容器,2.利用DockerCompose管理多容器應用,3.定期清理未使用的鏡像和容器,4.採用多階段構建優化鏡像大小,5.限制容器資源使用提升安全性,6.遵循Dockerfile最佳實踐提高可讀性和維護性。這些實踐能幫助用戶高效使用Docker,避免常見問題並優化容器化應用。

在Linux上使用Docker可以提高開發和部署效率。 1.安裝Docker:使用腳本在Ubuntu上安裝Docker。 2.驗證安裝:運行sudodockerrunhello-world。 3.基本用法:創建Nginx容器dockerrun--namemy-nginx-p8080:80-dnginx。 4.高級用法:創建自定義鏡像,使用Dockerfile構建並運行。 5.優化與最佳實踐:使用多階段構建和DockerCompose,遵循編寫Dockerfile的最佳實踐。

Docker監控的核心在於收集和分析容器的運行數據,主要包括CPU使用率、內存使用、網絡流量和磁盤I/O等指標。通過使用Prometheus、Grafana和cAdvisor等工具,可以實現對容器的全面監控和性能優化。

DockerSwarm可用於構建可擴展和高可用性的容器集群。 1)初始化Swarm集群使用dockerswarminit。 2)加入Swarm集群使用dockerswarmjoin--token:。 3)創建服務使用dockerservicecreate--namemy-nginx--replicas3nginx。 4)部署複雜服務使用dockerstackdeploy-cdocker-compose.ymlmyapp。

如何利用Docker和Kubernetes進行企業應用的容器編排?通過以下步驟實現:創建Docker鏡像並推送到DockerHub。在Kubernetes中創建Deployment和Service以部署應用。使用Ingress管理外部訪問。應用性能優化和最佳實踐,如多階段構建和資源限制。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Dreamweaver Mac版
視覺化網頁開發工具

Dreamweaver CS6
視覺化網頁開發工具