Compose Generator 是一个命令行工具,可帮助您尽快设置 Docker 项目。命令行界面 (cli) 充当处理常见 Docker 任务的助手

Compose Generator 的重点是提高常见用例的生产力和效率,例如设置 Docker 和 Docker Compose 以及部署软件堆栈。它利用预定义的服务模板,您可以使用这些模板准确地获得您所需要和想要的。不多也不少。Compose Generator 也具有可扩展性

部署项目

使用 Compose Generator,您只需执行以下四个步骤:

  1. 安装 Compose Generator(如下说明)
  2. 从 VCS 克隆项目的存储库
  3. 运行compose-generator install安装 Docker 和 Docker 4. Compose(如果已经安装了 Docker 和 Docker Compose 可以跳过)
    运行compose-generator -r以生成您的部署配置并随后运行它

image.png

生成 Docker Compose 配置

Compose Generator 可以被看作是一个部署助手,就像一个 Docker 安装的包装器。如上所示,Compose Generator 可用于在您的系统上安装 Docker 和 Docker Compose,因此您只需要首先关心安装 Compose Generator。顾名思义,Compose Generator 的主要功能是为您的项目生成 Docker Compose 配置。此外,Compose Generator 可以生成机密(例如数据库凭据等)、管理卷、网络、环境变量等等

在以下示例中,我们将部署一个基本的 Angular 应用程序,连接到 Spring Boot API 和 MySQL 数据库。Compose Generator 支持多种服务模板(趋势不断增长)

部署演示

docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock 
     -v $(pwd):/cg/out chillibits/compose-generator

Docker 拉取镜像并以交互模式运行它。该$(pwd)占位符代表您的码头工人主机系统上的电流路径被映射到/cg/out容器内的目录。这意味着,生成的输出文件,如docker-compose.yml稍后将位于您执行上述命令的目录中

image.png

Compose Generator 会询问您的项目名称,以及是否要创建生产就绪配置而不是默认开发配置,这会将您的服务隐藏在代理后面。Compose Generator 提供了各种预定义的服务模板,您可以像在构建块系统中一样根据您的需求进行安排。对于我们的示例,我们将Angular在前端部分、Spring with Maven后端部分和MySQL数据库部分中进行选择。对于您从模板列表中选择的每个项目,Compose Generator 会询问您特定于服务的问题,这对于设置它们很重要。在回答了所有问题后MySQL你可以看到,Compose Generator 预先选择了 PhpMyAdmin,因为它是 MySQL 的默认数据库管理系统。您可以取消选择它或按 Enter 继续

image.png

Compose Generator 将在调用它的目录中生成以下文件结构:

current directory
├─volumes
│ ├─volume1
│ ├─volume2
│ ├─volume3
│ └─...
├─.gitignore
├─.cg.yml
├─docker-compose.yml
└─environment.env

该docker-compose.yml文件包含您的 Docker Compose 配置。如果您的容器需要任何机密,它们将存储在environment.env文件中,该文件将在运行时附加到所有相关容器。如上所示,Compose Generator 还会为您创建卷目录。根据您选择的堆栈模板,卷目录中已经有文件(例如配置文件等),可以尽可能多地减轻您的负担。
在.gitignore根目录文件中包含的environment.env文件,不小心犯任何秘密到VCS。
.cg.yml是 Compose Generator 本身的配置文件,用于记住您的一些选择。

从配置中删除服务

想象一下,你已经产生了堆栈Angular,Spring with Maven,MySQL和PhpMyAdmin,但你想切换到MongoDB的,你必须处理多个文档,就像在你的Spring应用程序的数据结构。
你可以做的就是要求撰写发电机删除服务MySQL和PhpMyAdmin并添加MongoDB代替。

要删除前两个,您可以在docker-compose.yml配置文件所在的目录中执行以下命令:

compose-generator remove

选择两个服务MySQL,PhpMyAdmin然后按回车键。Compose Generator 将从您的撰写配置中删除这些服务,而不会留下任何残留物,例如未使用的卷、网络等。

将服务添加到配置

现在为 增加服务MongoDB,您可以执行以下命令:

compose-generator add mongodb

ocker-compose.yml文件现在应该包含一个服务database-mongodb和服务,database-mysql并且db-admin-phpmyadmin应该消失了

点赞(1)

评论列表 共有 0 评论

暂无评论