home-ops icon indicating copy to clipboard operation
home-ops copied to clipboard

Docker & Helm repo cache on TrueNAS

Open mircea-pavel-anton opened this issue 10 months ago • 2 comments

It would be useful to have an artifact cache in my local infrastructure, mainly for caching stuff and to avoid hitting some of the pull limits of the public repos.

Deployment Options

Option 1: internally, inside the cluster

Pros:

  • easily integrates into the current setup
  • no extra infrastructure to maintain

Cons:

  • creates a chicken and egg situation as some apps will pull from this repo and some will pull from the public repos. talos will definitely pull from public repos

Option 2: externally, on my TrueNAS server

Pros:

  • direct access to a lot of storage without going over the network
  • external to the cluster, everything can be pulled from here

Cons:

  • technically more infra to maintain and another cluster (single node) to manage
  • breaks the contract of "truenas runs only my storage" (though i still need an S3 endpoint so i will likely have to deploy minio on there as well)
  • creates an external dependency and single point of failure for my cluster

Option 3: externally, on a dedicated (perhaps Docker) cluster

Pro:

  • HA setup, maybe 2 docker nodes with a VIP?
  • external to the cluster, everything can be pulled from here
  • external to the storage server, keeps the contract of storage server does storage

Cons:

  • external to the storage server -> need yet more storage :')
  • dedicated cluster (maybe a docker swarm cluster) to maintain

Options currently under consideration:

  • Artifactory -> often used at work
  • Harbor -> new(er?) project and part of the CNCF, maybe interesting to try it out
  • Nexus? -> very little experience with it, uglier UI but more features compared to the free artifactory AFAIK

mircea-pavel-anton avatar Oct 08 '23 10:10 mircea-pavel-anton