Skip to content

Conversation

jnovack
Copy link

@jnovack jnovack commented Apr 23, 2025

This PR combines (and supercedes) the ideas of #380, #396 and #419 and updates the example to use Traefik v3.

It is designed to be a "detailed quickstart" for a homelab or development environment and can easily be broken apart for larger more-production environments.

For the most part, this configuration file is about configuring Traefik and the support containers, and less about configuring this container.

I have followed your commit naming convention and files are linted and documented as much as possible to be helpful for those who wish to modify the configuration.

Features:

  • Unauthenticated PULLs
  • Authenticated PUSH/DELETEs
  • Single URL (registry and ui on the same domain, e.g. https://registry.contoso.com)
  • Let's Encrypt enabled
  • Authenticated Traefik Dashboard

Unfortunately, there were just too many updates and changes to continue the work of any other committers and extend their PRs. I did however, add a few names to the Contributors list of the README.md file as a consolation.

@jnovack jnovack force-pushed the traefik-swarm-example branch 2 times, most recently from bdd727e to d152646 Compare April 24, 2025 01:51
@jnovack jnovack force-pushed the traefik-swarm-example branch from d152646 to acbdea2 Compare April 24, 2025 03:19
Copy link
Owner

@Joxit Joxit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, thank you for you contribution. I added some comments 😄

networks:
- frontend

### Redis Container
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If redis is not required for the example to work, please remove it too.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The registry uses redis. I wanted to make a fully functional example that you can "one-click" and you can be up and running, almost zero configuration. In that light, I propose to keep.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The minimal configuration does not need redis, the basic configuration is using volume disk. Redis is used as a blobdescriptor cache that can be replaced by a simple inmemory cache

@jnovack jnovack requested a review from Joxit June 6, 2025 13:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants