Python技巧:Docker框架的使用系列教程(一)
最近Python程式設計師提到最多的一個框架就是docker了,對於一些新手來說還不知道他的存在,這裡小千就用幾期文章給大家介紹一下這個docker和使用教程,喜歡的話記得關注一下。
1.什麼是Docker?
Docker時Docker.Lnc公司開源的一個基於LXC技術之上搭建的Container容器引擎,原始碼託管在Github上,基於Go語言並遵從Apache2.0協議開源。Docker將應用程式與該程式的依賴,打包在一個檔案裡面。執行這個檔案,就會生成一個虛擬容器。程式在這個虛擬容器裡執行,就好像在真實的物理機上執行一樣。有了Docker,就不用擔心環境問題。
總體來說,Docker的介面相當簡單,使用者可以方便地建立和使用容器,把自己的應用放入容器。容器還可以進行版本管理、複製、分享、修改,就像管理普通的程式碼一樣。容器是完全使用沙箱機制,相互之間不會有任何介面(類似 iPhone 的 app),更重要的是容器效能開銷極低。
2.Docker的設計理念和概念
docker設想是交付執行環境如同海運,OS如同一個貨輪,每一個在OS基礎上的軟體都如同一個集裝箱,使用者可以透過標準化手段自由組裝執行環境,同時集裝箱的內容可以由使用者自定義,也可以由專業人員製造。這樣,交付一個軟體,就是一系列標準化元件的集合的交付,如同樂高積木,使用者只需要選擇合適的積木組合,並且在最頂端署上自己的名字(最後一個標準化元件是使用者的app)。這也就是基於docker的PaaS產品的原型。
所以Docker的主要目標是“Build,Ship and Run Any App,Anywhere”,也就是透過對應用元件的封裝、分發、部署、執行等生命週期的管理,使使用者的APP(可以是一個WEB應用或資料庫應用等等)及其執行環境能夠做到“一次封裝,到處執行”。
Docker是開發人員和系統管理員使用容器開發、部署和執行應用程式的平臺。使用Linux容器來部署應用程式稱為集裝箱化。使用docker輕鬆部署應用程式。目前,Docker 從 17.03 版本之後分為 CE(Community Edition: 社群版) 和 EE(Enterprise Edition: 企業版),我們用社群版就可以了。
3.Docker的組成部分
一個完整的Docker有以下幾個部分組成:DockerClient客戶端、Docker Daemon守護程式、Docker Image映象、DockerContainer容器。
透過執行images啟動容器,一個images是一個可執行的包,其中包括執行應用程式所需要的所有內容-程式碼,執行時,庫、環境變數和配置檔案。容器時images執行時示例-當被執行時(即,images狀態,或者使用者程式)在記憶體中,可以使用命令檢視正在執行容器的列表docker ps,就像在Linux中一樣。
4.容器虛擬化和用途
Docker的主要用途,目前有三大類:
提供了一次性的環境:比如,本地測試他人的軟體、持續整合的時候提供單元測試和構建的環境。
提供彈性的雲服務:因為Docker容器可以隨開隨關,很適合動態擴容和所容。
組建微服務架構:透過多個容器,一臺機器可以跑多個服務,因此在本機就可以模擬出微服務架構。
5. Docker的使用場景
使用Docker容器開發、測試、部署服務:因為Docker本身非常輕量化,所以本地開發人員可以構建、執行並分享Docker容器。容器可以在開發環境中建立,然後再提交到測試,最終進入生產環境。
建立隔離的執行環境:在很多企業應用中,同一服務的不同版本可能服務於不同的使用者,那麼使用Docker非常容易建立不同的生成環境來執行不同的服務。
搭建測試環境:由於Docker的輕量化,所以開發者很容易利用Docker在本地搭建測試環境,用來測試程式在不用系統下的相容性;甚至搭建叢集的部署測試。
構建多使用者的平臺即服務(PaaS)基礎設施。
提供軟體即服務(SaaS)應用程式。
高效能、超大規模的宿主機部署。
以上就是關於 Docker的一些基礎介紹了,下一期我們給大家介紹 Docker的安裝和常用概念,千萬不要錯過了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2768109/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Docker框架的使用系列教程(二)Docker框架
- Docker框架的使用系列教程(三)Docker框架
- Docker框架的使用系列教程(四)容器的使用Docker框架
- Docker框架使用系列教程(六)建立映象Docker框架
- Docker框架使用系列教程(七)Dockerfile映象建立Docker框架
- Docker框架使用系列教程(五)容器間的連結Docker框架
- Python教程系列之Flask框架的學習PythonFlask框架
- Java集合框架系列教程一:集合框架簡介Java框架
- 老周的ABP框架系列教程 -》 一、框架理論初步學習框架
- 在 Docker 中使用 mysql 的一些技巧DockerMySql
- 一步一步使用ABP框架搭建正式專案系列教程框架
- Python程式和Flask框架中使用SQLAlchemy的教程PythonFlask框架SQL
- PHP框架Yii系列教程(一):入門例項PHP框架
- golang web框架——gin使用教程(一)GolangWeb框架
- Docker系列教程14-Docker資料持久化Docker持久化
- docker 使用教程1Docker
- Docker(一):Docker入門教程Docker
- Docker 入門系列一:docker 命令Docker
- Python系列教程6Python
- Python教程系列(一)—— Python基礎教程之第一個程式設計練習Python程式設計
- Python使用技巧Python
- 學好Python不加班系列之SCRAPY爬蟲框架的使用Python爬蟲框架
- [Docker系列·7]使用nsenter除錯Docker映象Docker除錯
- python技巧 使用值來排序一個字典Python排序
- MongoTemplate 教程系列(一)Go
- Python的一些技巧Python
- 無涯教程:Docker - Python安裝DockerPython
- 使用 Python Pip 的 10 個技巧Python
- 最新最全的 layUI 框架使用教程視訊教程分享UI框架
- Python 系列教程(入門系列已寫完)Python
- 「譯」Java集合框架系列教程四:Set介面Java框架
- 「譯」Java集合框架系列教程三:Collection介面Java框架
- 「譯」Java集合框架系列教程二:集合介面Java框架
- 使用python的docker-py實現docker的api操作PythonDockerAPI
- Gurobi基礎教程(Python版)-系列教程2Python
- Python 快速教程(補充篇02): Python小技巧Python
- docker 的一些使用Docker
- XBaseAndroid框架使用大致教程Android框架