Commit Graph

13 Commits (0.6.0)

Author SHA1 Message Date
Ricardo Pardini a726f88049
3-tier implementation of manifest caching (#57)
* implement manifest caching; refactor config with includes, and generate from ENVs in entrypoint.sh
- disabled by default; enable with -e ENABLE_MANIFEST_CACHE=true
- default times and regexes are a wild guess, make sure to tune for your use case.
-  add manifest caching/anti-ratelimit usage note to README
- add -e ENABLE_MANIFEST_CACHE=true to examples, some wording changes
- add -e ENABLE_MANIFEST_CACHE=true to one the steps in test workflow.
2020-10-30 18:54:10 +01:00
Ricardo Pardini a2fd8bb32b upgrade to mitmproxy 5.x; do not store large bodies in memory; use separate config dirs for each mitmweb; better mitmweb logging 2020-10-30 12:02:56 +01:00
Ricardo Pardini aaf7fa0308 introduce env DEBUG_HUB; to help understand #54
- injects a mitmproxy between the caching layer and DockerHub's registry-1.docker.io
- it also disables VERIFY_SSL so the mitmproxy can be used;
- DEBUG_HUB's mitmweb is exposed on port 8082
- both DEBUG and DEBUG_HUB can be enabled independently
2020-10-30 00:20:18 +01:00
Ricardo Pardini fe388f560b silence mitmweb, nginx logs are hard enough to read 2020-10-08 02:45:49 +02:00
Ricardo Pardini ec4df7b4b7 GitHub Actions: multiarch build, new -debug version, much lighter layers 2020-10-08 01:57:49 +02:00
ricardop 72dc9a8819 use alpine's coreutils base64, which supports -w 0 to avoid wrapping -- thanks @miihael 2020-04-03 14:06:19 +02:00
Sebastián Ramírez f3d2eefc09 Add support for custom cache sizes 2019-09-27 13:44:07 -05:00
Sebastián Ramírez df8c057855 🐛 Fix entrypoint when AUTH_REGISTRIES is empty 2019-08-09 18:53:09 -05:00
Sebastián Ramírez abe5c4a644 Add support for GCR service account keys
and custom delimiters for registry auth strings
2019-08-03 21:40:03 -05:00
Stan Yagolnitser a89cf362ad set nginx DNS configuration from container resolv.conf to allow proxy to operate behind firewall 2018-12-12 00:18:34 -08:00
Ricardo Pardini 7724f3ba15
completely reworked caching, now cache by exception (/blobs/ only essentially)
- now only /v2/.../blobs/... URIs are actually cached (together with their redirect catchers)
- /manifests/, /token, and /v2/ are not cached anymore, which should solve a lot of problems
- better messages for /v1 attempts
- fix usage of $connect_host:443 (which is hostname:port and causes errors to be logged) to $connect_addr (which returns an IP:port) in the proxy layer
2018-11-04 16:43:53 +01:00
Ricardo Pardini 8ff06e3dec
add mitmproxy/nginx-debug inspection capabilities
- avoid some caching for non-blob urls
2018-11-04 11:23:52 +01:00
ricardop 0abd4ca51a
completely reworked into an HTTPS_PROXY-based solution
- emit our own certificates
- configurable via ENVs
- generates config dinamically
2018-06-29 01:39:02 +02:00