This proxy enables build tools running within a network isolated unshare environment to download artifacts from a list of allowed target hosts.
- Runs outside unshare environment
- Listens on Unix domain socket for connections from Domain Proxy Client
- Forwards HTTP requests from Domain Proxy Client to target hosts
- Forwards HTTP responses from target hosts to Domain Proxy Client
- Optionally uses an internally configured proxy for HTTP connections to target hosts
- Runs inside unshare environment
- Connects to Domain Proxy Server via Unix domain socket
- Listens on HTTP port for connections from build tools
- Forwards HTTP requests from build tools to Domain Proxy Server
- Forwards HTTP responses from Domain Proxy Server to build tools
- DOMAIN_PROXY_BYTE_BUFFER_SIZE
- Default:
32768
- Default:
- DOMAIN_PROXY_DOMAIN_SOCKET
- Default:
/tmp/domain-socket.sock
- Default:
- DOMAIN_PROXY_CONNECTION_TIMEOUT
- Default:
10000
milliseconds
- Default:
- DOMAIN_PROXY_IDLE_TIMEOUT
- Default:
30000
milliseconds
- Default:
- DOMAIN_PROXY_TARGET_ALLOWLIST
- Default:
localhost,repo.maven.apache.org,repository.jboss.org,packages.confluent.io,jitpack.io,repo.gradle.org,plugins.gradle.org
- Default:
- DOMAIN_PROXY_ENABLE_INTERNAL_PROXY
- Default:
false
- Default:
- DOMAIN_PROXY_INTERNAL_PROXY_HOST
- Default:
indy-generic-proxy
- Default:
- DOMAIN_PROXY_INTERNAL_PROXY_PORT
- Default:
80
- Default:
- DOMAIN_PROXY_INTERNAL_PROXY_USER
- DOMAIN_PROXY_INTERNAL_PROXY_PASSWORD
- DOMAIN_PROXY_INTERNAL_NON_PROXY_HOSTS
- Default:
localhost
- Default:
- DOMAIN_PROXY_HTTP_PORT
- Default:
8080
- Default:
go build -v -o bin/domainproxyserver cmd/server/main.go
go build -v -o bin/domainproxyclient cmd/client/main.go
./bin/domainproxyserver
./bin/domainproxyclient
go test -v ./test