Configure Proxy Between JFrog Products

JFrog Installation & Setup Documentation

Content Type
Installation & Setup
ft:sourceType
Paligo

In corporate environments all cross-node communication may be required to go through a corporate proxy. You can accomplish this by using the router services to establish:

  • Internal communication between services and their local router within a JPD.

  • Outbound communication through a proxy.

To configure the router, set the following in each service's System YAML Configuration File.

The following example assumes the proxy is listening on 1.2.3.4:7777 for HTTP and on 1.2.3.4:8888 for HTTPS.

router:
  proxy:
    # Proxy url for all outgoing http requests
    httpUrl: "http://1.2.3.4:7777"
    # Proxy url for all outgoing https requests
    httpsUrl: "https://1.2.3.4:8888"
    # List of target hosts to communicate with directly, bypassing the proxy.
    # "localhost" will always be added to this list automatically.
    ignoredHosts:
    - "example1.ignored.host"
    - "example2.ignored.host"
  1. The router automatically adds localhost to the ignored hosts.

  2. The example uses the system configuration file, but you can do the the same with environment variables (JF_ROUTER_PROXY_HTTPURL, JF_ROUTER_PROXY_HTTPSURL, JF_ROUTER_PROXY_IGNOREDHOSTS).

  3. The router respects also the standard proxy related environment variables (HTTP_PROXY,HTTPS_PROXY,NO_PROXY), but the router's system configuration takes precedence if defined.

  4. Configure all other services in a similar way to prevent them to go through proxy when calling the local router and to use the proxy when going out to external third party services like Artifactory remote repositories.