Compose Generator - Update 1.2.0
Tags: docker, go, opensource, devops
Published: 2021-11-06 23:36:19

If you haven't read about Compose Generator yet, visit the introduction article [here](https://dev.to/marcauberer/compose-generator-deploy-your-app-in-seconds-21o6). This particular article shows which features / improvements were added in version 1.2.0 of Compose Generator.

Apart from optimization and bugfixes, there are a few new features to discuss in the following parts.

![Compose Generator Logo](https://res.cloudinary.com/practicaldev/image/fetch/s--MIG-e4zF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rwkkyic5v2tcx0nxx8m2.png)

## Traefik as a new proxy template
Version 1.2.0 brings support for a second reverse proxy service in addition to JWilder Nginx / Let's Encrypt Companion called Traefik. Traefik is a highly customizable edge router which brings a massive amount of built-in features: Reverse proxying, automatic service-detection, load balancing, no-downtime upgrades/configuring and supports Docker, Docker Swarm, Kubernetes, AWS, etc.

> For supporting Traefik, we added the proxy-labels field to the predefined service configuration spec, because configuring Traefik service detection works with Docker labels.

![Traefik Web UI](https://cdn-images-1.medium.com/max/800/1*KTRKGqprEX0MfvUMY6YKpQ.png)

The most interesting feature about Traefik is the built-in web interface, which gets exposed on port 8080 (customizable). It gives you an overview which and how many services are running and if they are healthy.

**Warning**: The web UI is not password protected per default, so before you use it in production, please un-expose the web UI or enable a password protection.

## Generating from remote config files
Since the beginning, Compose Generator supports generating stacks from configuration files ([Example configuration](https://github.com/compose-generator/compose-generator/blob/release/v1.2.x/media/example-config.yml)). With this update it supports remote configuration files. Compose Generator will download the config file from the url and parse it directly. You can pass a remote config file the same way as a file on disk, but as an url instead of the filepath:
`cg --config https://example.com/config.yml`

## Support for .yml and .yaml
Up to now, Compose Generator could only load `docker-compose.yml` and was not able to load `docker-compose.yaml`. This should have changed now. Compose Generator searches for `docker-compose.yaml` first. If this file does not exist, it falls back to `docker-compose.yml`. The default value is still `docker-compose.yml` to not cause any compatibility issues.

## Further reading about Compose Generator
The key concept behind Compose Generator is, that it is durable and extensible. Therefore it is possible to create own predefined service templates and add them to the list of selectable services. If you do so, feel free to hand it in as a community contribution on GitHub!

There will be more upcoming articles regarding in-depth information about creating predefined service templates and all available cli subcommands!

---

Thank you for your interest and for reading this article.
If you want to learn more about Compose Generator, please visit the official documentation at [www.compose-generator.com](https://www.compose-generator.com) and the [open source project on GitHub](https://github.com/compose-generator/compose-generator).

Header image source: Photo by [Dominik Lückmann](https://unsplash.com/@exdigy) on [Unsplash](https://unsplash.com/)