Docker新功能曝光,一键自动生成 Dockerfile 和 Compose 文件

简介: 首先你会注意到这是一个图形化的工具。我们并没有打破任何已经运作的东西,在幕后仍然是使用 Dockerfiles 和 Compose 文件来创建一切,我们只是为您从 A 点到 B 点提供了一种新的途径......

screenshot

本文首发自“Docker公司”公众号(ID:docker-cn)
编译丨小东
每周一、三、五 与您不见不散!


在 DockerCon 大会上,我们展示了即将推出的 Docker Desktop 版的全新功能,该功能将让您比以往更加容易地设计出基于容器的应用程序。对于一小部分开发人员来说,Docker Desktop 的当前迭代拥有将应用程序进行容器化所需的一切,但这需要先了解 Dockerfile 和 Compose 文件的技术参数,才能开始使用 Docker CLI(命令行界面)来构建和运行您的应用程序。

但是我们一直在考虑如何将这个功能带给所有的开发人员。我们希望让容器化变得更加易用,而且我们也希望让共享和协作变得更加容易,并将基于容器的开发集成到更多开发人员的工具集中。这项新的指导性工作流程功能就是今天我们想要展示的,我们会在这里分享更多细节,并畅想未来。

screenshot

首先你会注意到这是一个图形化的工具。我们并没有打破任何已经运作的东西,在幕后仍然是使用 Dockerfiles 和 Compose 文件来创建一切,我们只是为您从 A 点到 B 点提供了一种新的途径,因为并不是每个人都想从头开始编写 Dockerfiles 和 Compose 文件。


创建新的自定义应用程序

screenshot

当您单击“Custom application(自定义应用程序)”按钮启动工作流程时,您将看到一个罗列着服务的列表,您可以将其添加到新的应用程序中。您选择的每个服务都将成为最终应用程序中的一个容器,而 Docker Desktop 将负责为您创建相关的 Dockerfiles 和 Compose 文件,以便完成后续步骤。

screenshot

目前,您还可以在添加服务时对服务进行一些基本的自定义:您可以根据所选服务更改其版本、端口号和其他一些选项。

screenshot


组装您的应用程序

当您在应用程序中选择了所需的所有服务并准备好继续进行操作时,您需要先给应用程序命名,并指定生成文件的存储位置,然后点击“Assemble(组装)”按钮。

screenshot

组装步骤:为每个服务创建 Dockerfiles 文件,用于启动整个应用程序的 Compose 文件,以及为大多数服务创建一些基本的代码存根,为您启动应用程序提供足够的支持。当然,您可以在选择的编辑器中打开代码存根并立即开始开发,或者用现有的代码替换它们。为该服务创建的 Dockerfile 是设置好的,您可以为其提供任何代码并将其添加到构建的容器中。需要重申的是,这是一个标准的、纯文本的 Dockerfile 文件。因此,如果您或您的团队的其他成员想要深挖和定制容器镜像,那么就可以根据需要修改 Dockerfile 文件。

screenshot

您选择成为应用程序一部分的每项服务都将拥有自己的Dockerfile,以及启动服务所需的代码存根。


运行您的新应用程序

应用程序设计功能还可以创建 Compose 文件,您需要将您选择的所有服务作为一个完整的应用程序组合在一起。就像 Dockerfiles 文件一样,这是一个标准的 Compose 文件,如果您愿意,可以打开并自定义。如果您碰巧知道 Docker CLI 命令,那么您就足以启动任何单个服务或整个应用程序。但是,引导式工作流的重点在于为您做到这一点,因此界面中有一个“Run Application(运行应用程序)”按钮来协调一切:

screenshot

这将从 Dockerfiles 文件中为每个服务启动构建进程,,然后根据 Compose 文件中的指定启动您的应用程序。您可能会注意到用户界面中的“在 Visual Studio 中打开代码”按钮,这是我碰巧安装在这台笔记本上的编辑器。点击该按钮,您就可以直接看到编辑器中的项目文件,准备开始构建新的容器代码测试循环。


从模板开始构建

这就是“自定义应用程序”工作流程,但在这些新工作流程中还有另一种创建应用程序的方法,基于模板的设计。

screenshot

您将在此工作流程中看到的主要区别是,您将看到预先配置的应用程序模板,而不是自己选择所有单个服务:

screenshot

这个想法的目的是,团队最终将能够创建属于自己的模板,使协作和共享变得更加简单。这是目前客户反馈给我们特别感兴趣的一个功能,不仅仅是为了共享,也是为了应用程序架构师和安全团队能够创建预先批准的模板,并在开始就限制可以使用的服务。

我们正在努力为这些工作流程添加更多功能:我们正在完成对 Secrets 、 Volumes 和Networks 等剩余组合功能的支持。我们还希望添加与 CI 系统的集成,并允许您直接从 Docker Desktop 部署到 Docker 企业版。


所有开发人员的 Docker

让 Docker 可供更广泛的开发人员访问是一个主题,您会看到我们一次又一次地回来。如果您有想法帮助我们实现这一目标,请告诉我们。如果您有兴趣尽早访问 Docker Desktop 中的新应用设计功能,请注册 beta.docker.com。

相关文章
|
8天前
|
存储 监控 安全
【专栏】Docker Compose:轻松实现容器编排的利器
【4月更文挑战第27天】Docker Compose是款轻量级容器编排工具,通过YAML文件统一管理多容器应用。本文分三部分深入讨论其核心概念(服务、网络、卷和配置)、使用方法及最佳实践。从快速入门到高级特性,包括环境隔离、CI/CD集成、资源管理和安全措施。通过案例分析展示如何构建多服务应用,助力高效容器编排与管理。
|
16天前
|
缓存 安全 Docker
《Docker 简易速速上手小册》第3章 Dockerfile 与镜像构建(2024 最新版)
《Docker 简易速速上手小册》第3章 Dockerfile 与镜像构建(2024 最新版)
43 0
|
5天前
|
Shell 应用服务中间件 nginx
6.Docker Compose
6.Docker Compose
|
7天前
|
应用服务中间件 Shell nginx
制作docker镜像的dockerfile编写规则汇总
制作docker镜像的dockerfile编写规则汇总
|
12天前
|
NoSQL Redis Docker
[docker] Compose 简介
[docker] Compose 简介
|
12天前
|
应用服务中间件 Shell nginx
[Docker] Dockerfile
[Docker] Dockerfile
|
12天前
|
JavaScript Java Docker
使用 Dockerfile 构建和定制 Docker 镜像
Dockerfile是构建Docker镜像的文本文件,包含一系列指令,如`FROM`, `WORKDIR`, `COPY`, `RUN`, `EXPOSE`和`CMD`。它用于自动化`docker build`命令来创建Image。使用Dockerfile可以基于官方镜像定制应用镜像,方便应用容器化和扩展。基本流程包括选择基础镜像、设置工作目录、安装依赖、暴露端口和定义启动命令。构建镜像使用`docker build`,运行容器用`docker run`。了解并熟练使用Dockerfile能提升容器化部署效率。
20 0
|
14天前
|
Java 测试技术 持续交付
云效产品使用常见问题之通过流水线构建的java代码,在docker文件里拿到失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
16天前
|
NoSQL 数据库 Docker
《Docker 简易速速上手小册》第5章 Docker Compose 与服务编排(2024 最新版)
《Docker 简易速速上手小册》第5章 Docker Compose 与服务编排(2024 最新版)
41 0
|
27天前
|
NoSQL Redis Docker
Docker Compose、Swarm、Stack、Secret、Config
Docker Compose、Swarm、Stack、Secret、Config