Comments (7)
Thank you @glyn, we've added this issue to our planning. We will take a look with @simonferquel and @chris-crone 👍
from cnab-go.
Once cnabio/cnab-spec#182 is implemented, it may make sense to delete duffle import
altogether.
from cnab-go.
@silvin-lubecki At today's CNAB community call @simonferquel said that it would still be desirable to load invocation images into the docker daemon during duffle import
as a performance optimisation and that there should be a way of implementing this by loading some, or possibly all, the images in the thick bundle's OCI image layout into the daemon. He asked me to point you at this issue. I am hoping that someone from the docker team can take this issue on as I haven't seen a good way of implementing it and there may be some tricky areas (such as images for multiple architectures stored in the layout).
from cnab-go.
@silvin-lubecki have ya'll decided anything regarding this issue?
from cnab-go.
Now that the import/export logic is moving to cnab-go, so should this issue.
from cnab-go.
@silvin-lubecki At today's CNAB community call @simonferquel said that it would still be desirable to load invocation images into the docker daemon during duffle import as a performance optimisation and that there should be a way of implementing this by loading some, or possibly all, the images in the thick bundle's OCI image layout into the daemon. He asked me to point you at this issue. I am hoping that someone from the docker team can take this issue on as I haven't seen a good way of implementing it and there may be some tricky areas (such as images for multiple architectures stored in the layout).
Checking in with @silvin-lubecki to see if this functionality was worked on at some point? @jeremyrickard and I are working on 'import'-ing a given .tgz bundle archive in Porter, which, if currently created via duffle export
, is in the form of an OCI layout. Therefore, we wanted to see if work had been done to parse such a layout for adding images to a daemon and potentially re-tagging/publishing to a different registry, etc.
from cnab-go.
Note that the library https://github.com/pivotal/image-relocation parses OCI image layouts and allows you to push their contents to registries and preserve their repo digests.
The piece needed by this issue which is currently lacking is the ability to load images from a layout into the docker daemon.
The image-relocation library is based on https://github.com/google/go-containerregistry which has some basic support for the docker daemon. However, that doesn't guarantee to preserve the repo digest of an image because the docker daemon itself provides no such guarantee (that is, if you load an image into the daemon and then docker push
the image, the original repo digest in the OCI image layout, is not guaranteed to be preserved).
The odd thing is that the repo digest does seem to be preserved by the docker daemon in the above scenario. If this behaviour could be guaranteed, then we'd be in business. Without that, I doubt this feature can be implemented at all (unless we are happy potentially to mutate the repo digest).
from cnab-go.
Related Issues (20)
- Use concurrency in the data persistence layer? HOT 1
- Return partial data on error?
- Safe way to generate ULID without possible error?
- Consolidate regex for Claim Name Validation Regex
- Handle context cancellation in the kubernetes driver HOT 1
- Remove custom yaml marshaling from Source struct
- Add Parameter Set HOT 3
- Support streaming outputs
- Use go:embed from Go 1.16 HOT 1
- Require only one review for pull requests to the cnab-go library HOT 9
- Remove @glyn from CODEOWNERS HOT 2
- Can we replace the filesystem store with something queryable like sqlite? HOT 1
- Optional parameters are not injected properly HOT 1
- Unused docker driver config options HOT 1
- Cannot validate a parameter whose default is {} HOT 1
- Don't log a warning about log streaming before the container has started
- Remove CRUD data access layer
- Flake: TestClaimSchema HOT 2
- Flake: TestDockerDriver_Run
- Make owner reference configurable for resources created by the kubernetes driver
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cnab-go.