Commit Graph

22 Commits (c52c7d3741d8eba2bb14d1a1576ee3e9ff16b816)

Author SHA1 Message Date
Federico Gimenez 536f0fc8a0
Allow push (#59)
Introduce ALLOW_PUSH, if set to true, allows non-GET methods through the proxy
2020-12-02 14:58:19 +01:00
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 227a397225 Link image to original repository on GitHub via LABEL 2020-10-30 13:24:08 +01:00
Ricardo Pardini 1856d821fc bump base image to nginx-1.18.0-alpine-3.12.1 2020-10-30 12:31:52 +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 67edf7efda fix python3 deps for mitmproxy/mitmweb (-e DEBUG=true) 2020-10-08 02:32:00 +02:00
Ricardo Pardini ec4df7b4b7 GitHub Actions: multiarch build, new -debug version, much lighter layers 2020-10-08 01:57:49 +02:00
ricardop a2c0afcbc4 upgrade to nginx-1.18.0-alpine-3.12; alpine 3.12 changed a lot of python/pip/wheel stuff 2020-09-22 10:15:15 +02:00
ricardop 2c8be197be fix, we need openssl package even in non-debug builds 2020-06-08 15:48:14 +02:00
ricardop 6a1fe384f5 introduce Docker build-args:
- BASE_IMAGE, used in FROM line
- DEBUG_BUILD, build mitmproxy or not
2020-06-08 14:49:21 +02:00
ricardop 056c8521f9 use specific mitmproxy version (latest in 4.x branch) 2020-04-03 14:12:43 +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
ricardop bb8ab751a7 Merge branch 'pull/30' 2020-04-03 13:41:12 +02:00
ricardop 2bd42f9a5b Bump base image version to nginx 1.16.1 and alpine 3.11 2020-04-03 13:34:29 +02:00
Jeff Bachtel 75bc9e0825 Move apk add and del into same layer
Prevents bloating of final image
2020-01-28 15:28:22 -07:00
Ricardo Pardini 7737bf807a
disable debug by default; fixes #9 2019-01-16 20:53:45 +01: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
ricardop 325dd23ae5
initial commit 2018-06-27 13:08:09 +02:00