In version v2
, ORAS Go library has been completely refreshed with:
- More unified interfaces
- Notably fewer dependencies
- Higher test coverage
- Better documentation
Besides, ORAS Go v2
is now a registry client.
- Moves
content.FileStore
to file.Store - Moves
content.OCIStore
to oci.Store - Moves
content.MemoryStore
to memory.Store - Provides SDK to interact with OCI-compliant and Docker-compliant registries
- Supports Copy with more flexible options
- Supports Extended Copy with options (experimental)
- No longer supports
docker.Login
anddocker.Logout
(removes the dependency ondocker
); instead, provides authentication through auth.Client
Documentation and examples are available at pkg.go.dev.
-
Get the
v2
packagego get oras.land/oras-go/v2
-
Import and use the
v2
packageimport "oras.land/oras-go/v2"
-
Run
go mod tidy
Since breaking changes are introduced in v2
, code refactoring is required for migrating from v1
to v2
.
The migration can be done in an iterative fashion, as v1
and v2
can be imported and used at the same time.