With this repository setup, you can:
Use a single URL to resolve 3rd-party dependencies & deploy your 1st-party packages.
Cache dependencies for faster future resolution.
Step 1 of 5
Your developers and tools often need to resolve dependencies from a public registry. Using JFrog, they'll call the JFrog Platform to resolve these dependencies.
Step 2 of 5
Inside the JFrog platform, the virtual repository serves as a smart router, to direct the call to either the remote repository (which caches external dependencies) or the local repository (which hosts 1st party packages). In this case, the call is transferred to the remote repository to resolve the dependency.
Step 3 of 5
JFrog's remote repository pulls the dependency from the public registry (e.g. Docker Hub or npmjs) and caches it for faster serving in the future. The package is then served back to the CI tool/developer.
Step 4 of 5
When software is successfully built, artifacts will be deployed into JFrog. This time, the virtual repository will route the call to the local repository, where the 1st party package will be hosted.
Step 5 of 5
The next time the dependency is required, it will be served directly from the remote repository's cache, enabling an expedited build.
Resources