审校 | 孙淑娟
Docker扩展可以通过提高速度和生产力为开发人员节省大量时间和精力。开发人员可以尝试采用,并实现CI/CD管道的自动化。
软件开发领域如今正在以前所未有的速度变化,对更快发布周期的需求导致了虚拟化技术的激增。虚拟机(VM)已经存在很多年,但是近年来出现的容器让它们相形见绌,因为虚拟机速度较慢,而且不像容器那么轻量。随着微服务的普及,容器已经成为在轻量级环境中开发、测试和部署应用程序的虚拟机的一个很好替代品。
Docker是一种开源技术,它使用Linux容器来虚拟化应用程序和其他软件进程,这样它们就可以在另一个容器中独立且更安全地运行,就好像它们是同一台计算机设备上独立运行的应用程序一样。
Docker将软件应用程序打包在虚拟容器中,这样它们就可以快速有效地运输、部署和运行。这些容器就像应用程序的虚拟储物柜。它们将应用程序及其依赖项打包,以便可以透明地在任何地方发布和运行。这意味着用户可以从开发、测试、登台或生产系统中获得相同的用户体验。
1、Docker扩展
Docker公司在DockerCon 2022大会上发布了Docker扩展(Docker Extensions)。Docker扩展的理念是通过使用第三方工具(如插件)来帮助开发人员扩展其功能,可以通过单击Docker桌面的扩展选项卡启用可用的扩展。扩展提高了开发人员的工作效率,并使工作流更加顺畅。开发人员可以在一个集中的地方使用他们喜欢的工具,即Docker桌面。
在探索各种有趣的扩展之前,先打开Docker桌面,从其首选项中启用Docker扩展。
以下是一些开发人员必须拥有的Docker扩展,以加快他们的软件开发。
2、DroneCI
众所周知,持续集成(CI)是进行DevOps的第一步。当开发人员编写代码时,他们将代码存储在像Git这样的源代码控制管理工具中。然后在持续集成工具的帮助下测试和构建代码。持续集成(CI)是每一种DevOps方法的重要组成部分。DroneCI是一个非常容易设置和使用的开源持续集成(CI)工具。现在有了这个扩展,用户将能够在笔记本电脑进行持续集成(CI)。只需要一个yml文件来定义步骤,然后就完成了。
可以采用一个简单的Node.js应用程序来处理插件。以下是克隆的示例应用程序。
可以直接从Docker桌面扩展选项卡安装DroneCI扩展。
在安装之后,单击Drone CI扩展,将看到以下仪表板:
由于现在还没有配置任何管道,应该看到一个空白的仪表板,没有导入任何管道。
点击“Import Pipeline”导入项目。扩展将显示所有的项目,.drone.yml在里面。因此,从本地导入一个项目进行尝试。
为了向你展示一个示例,导入了Simple-Node-App 项目,这是一个简单的Node.js应用程序,包括简单的测试。
下一步是运行管道,为此需要添加一些简单的设置,将在点击“运行/播放”按钮时执行这些设置;将会看到下面的动作:
添加所需的字段,例如要运行的步骤、秘密文件(如果有的话,可以在secret.txt文件中指定)、环境文件等等。
一旦运行了应用程序,就会看到管道正在被执行。
3、vcluster
与Kubernetes一起工作可能会令人不知所措。由于这涉及到一个巨大的学习曲线,开发人员需要花费更多的时间和精力来理解这个平台。虽然这一切都是值得的,但是如果有工具可以帮助开发人员并帮助他们提高生产力呢?
vclusters就是这样一个工具,可以使用它在任何Kubernetes集群上创建虚拟集群。与创建可能会增加云账单的成熟集群不同,vcluster价格低廉,并具有多租户的额外优势。这将使需要设置不同开发和测试配置的任何人受益。
确保从Docker桌面首选项启用Kubernetes。
vcluster扩展在Docker桌面扩展选项卡上很容易找到,点击就可以安装。
在安装Docker扩展之后,将看到一个创建虚拟集群的简单指示板。
然后,可以点击“创建新集群”为集群命名,填写必填字段,然后单击“创建”。
填写完所有必填字段之后,应该能够看到集群正在被创建。在一段时间之后,应该会看到它在运行。
可以使用vcluster CLI验证正在运行的集群。以下是列出vcluster的命令:
4、Microcks
Microcks是一个模拟和测试API和微服务的开源平台,可以部署模拟并在本地试验其他API。现在Docker扩展已经可用,可以有效地模拟和测试基于事件的API。Microks扩展在Docker桌面上随时可用,只需单击即可轻松安装。
点击“Launch Microcks” 选项卡:
Microcks开始运行,可以访问localhost:8080来测试API。
转到localhost:8080,应该会看到Microcks仪表板。
点击“APi”和“Services” 选项卡。
选择“REST API”并单击“下一步”。
命名API、版本和资源,然后单击“下一步”。
为这个实验添加如下所示的虚拟JSON Reference Payload,然后单击“下一步”。
最后一步是查看,一旦添加的数据是正确的,单击“下一步”。
应该看到刚刚创建的API列表。
单击它可以查看列出的带有端点的CRUD操作。用Get进行测试。
复制链接并在本地浏览器上打开端点,应该会看到如下内容:
5、结论
Docker是任何软件开发人员都必须了解的平台。多年来,Docker已经建立了一个庞大的社区和支持群体。这是Docker帮助开发人员简化软件开发和部署工作的一项出色举措。令人兴奋的是,用户可以构建自己的定制扩展。如果使用得当,上面列出的扩展可能会显著影响开发人员的软件交付管道。开发人员可以进行尝试,以提高速度和生产力。
原文链接:https://dzone.com/articles/docker-desktop-extensions-every-developer-must-try