全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

Python技巧|Docker框架的使用系列教程(一)

发布时间:2021-04-15 09:21:00
发布人:小千

      最近Python程序员提到最多的一个框架就是docker了,对于一些新手来说还不知道他的存在,这里小千就用几期文章给大家介绍一下这个docker和使用教程,喜欢的话记得关注一下。

      1.什么是Docker?

      Docker时Docker.Lnc公司开源的一个基于LXC技术之上搭建的Container容器引擎,源代码托管在Github上,基于Go语言并遵从Apache2.0协议开源。Docker将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了Docker,就不用担心环境问题。

      总体来说,Docker的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

1

      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的安装和常用概念,千万不要错过了。

      最后如果同学对Python培训课程感兴趣的话,不妨来千锋Python培训班了解一下我们的Python培训课程,更有免费的Python学习资料可以领取,赶紧来咨询一下吧!

相关文章

Nginx 是什么、为什么、怎么用?

Nginx 是什么、为什么、怎么用?

2023-10-14
C++的traits技术到底是什么?

C++的traits技术到底是什么?

2023-10-14
什么是 Java Agent 技术?

什么是 Java Agent 技术?

2023-10-14
什么是系统运维、应用运维、硬件运维?

什么是系统运维、应用运维、硬件运维?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取