<div dir="ltr"><div><div><div><div><div><div>The problem: Container images need to be delivered to another pulp in a disconnected manner. Specifically I need to "save" something to disk from pulp-1, walk that disk to another server, then import that saved content into pulp-2.<br><br></div>Quoting @mhrivnak from another email:<br><br><div style="margin-left:40px">The supported way to move docker content around is via the registry
 API, so we will need to do a "sync" on the disconnected capsule of a 
local crane instance that is serving walked-in content. It probably 
shouldn't be the same crane instance that's already running on the 
capsule, to avoid repo name collisions.</div><div style="margin-left:40px"><br></div><div style="margin-left:40px">You also need to have the docker content (blobs, manifests, etc) served locally.<br><div><br></div><div>httpd
 on the capsule could certainly be configured to run a second instance 
of crane on a different port, and to serve the walked-in content from 
some designated location.</div><div><br></div><div>1. Satellite 
publishes a docker repo. Its "redirect-url" needs to match whatever the 
URL will look like from the capsule when the content is being served 
there. Here are details on where the data gets written to disk by pulp: <a href="http://docs.pulpproject.org/plugins/pulp_docker/tech-reference/distributor.html#web-distributor" target="_blank">http://docs.pulpproject.<wbr>org/plugins/pulp_docker/tech-<wbr>reference/distributor.html#<wbr>web-distributor</a></div><div><br></div><div>2. the json blob, plus the rest of the repo data, gets walked to the disconnected capsule.</div></div><div style="margin-left:40px"><br></div><div style="margin-left:40px">3. The walked-in content is put in the right place so that a local crane and web server makes it available.</div><div style="margin-left:40px"><br></div><div style="margin-left:40px">4. Pulp on the capsule syncs the walked-in repos.</div><br></div>This has me wondering a few things:<br><br></div>Could a single crane support serving up multiple registries on different ports that are serving up different pulp repos? docker pull mycrane:5001/image:tag<br><br></div>Could a single crane support serving up multiple registries on different paths? docker pull mycrane:5000/some/path/image:tag<br><br></div>The context for my questions is foreman[1] where the disconnected use case is useful. Being able to also serve multiple registries for different organizations (scoping) would also be useful.<br><br></div>Creative ideas welcome!<br><div><br>[1] <a href="https://theforeman.org/plugins/katello/">https://theforeman.org/plugins/katello/</a><br></div></div>