chzheng2023
Mission Specialist
Mission Specialist
  • 248 Views

RH134 II ch13s04 version 9.0 lab question

Jump to solution

Lab question 4.2

I wonder why need to add "docker://" as pre-fix for the registry on skopeo inspect command as it doesn't show that on the podman search command output

$ skopeo inspect docker://registry.lab.example.com/ubi8/python-38

 but we can use podman inspect to inspect images without adding "docker://" as pre-fix
$ podman inspectregistry.lab.example.com/ubi8/python-38

What are the differences between these 2 commands?

2 Solutions

Accepted Solutions
zeet
Mission Specialist
Mission Specialist
  • 184 Views

Command with Skopeo :

$ skopeo inspect docker://registry.lab.example.com/ubi8/python-38

In this command, docker:// specifies that Skopeo should use the Docker registry protocol to inspect the image located at registry.lab.example.com/ubi8/python-38.

 

Command with Podman :

$ podman inspect registry.lab.example.com/ubi8/python-38

In this command, the absence of docker:// is because Podman defaults to using the Docker registry protocol when a transport method is not specified. This simplifies the command for common use cases.

 

Key Differences :

  1. Transport Protocol Specification: Skopeo requires an explicit transport protocol (docker://) due to its support for multiple transport methods. Podman defaults to using the Docker registry protocol, simplifying commands for common scenarios.

  2. Tool Purpose and Scope: Skopeo is focused on working with container images across various transports and storage locations. Podman is primarily concerned with managing containers and images on a local system, with the ability to pull images from and push images to remote registries.

  3. User Experience: Skopeo's requirement for specifying a transport protocol makes it more versatile but also requires a bit more knowledge from the user about where and how the image is stored. Podman's design caters to simplicity and ease of use in everyday container management tasks.

[root@localhost ~]# Jitendra_Kumar

View solution in original post

Travis
Moderator
Moderator
  • 169 Views

@chzheng2023 -

So @zeet did a really good job explaining the differences in the commands. However, there is one huge thing that was left out or more likely not emphasized enough ...

podman inspect inspects images locally. So it doesn't need the protocol specified to connect to a remote registry. In order to use Podman to inspect an image it must exist locally on the system.

skopeo inspect can inspect images locally and you don't need the docker:// if you are inspecting one locally on the system, but the SKOPEO command has the ability to inspect and interact with images on a remote registry in which you will want to specify the docker:// in the command.

 

https://github.com/containers/skopeo

Travis Michette, RHCA XIII
https://rhtapps.redhat.com/verify?certId=111-134-086
SENIOR TECHNICAL INSTRUCTOR / CERTIFIED INSTRUCTOR AND EXAMINER
Red Hat Certification + Training

View solution in original post

3 Replies
zeet
Mission Specialist
Mission Specialist
  • 185 Views

Command with Skopeo :

$ skopeo inspect docker://registry.lab.example.com/ubi8/python-38

In this command, docker:// specifies that Skopeo should use the Docker registry protocol to inspect the image located at registry.lab.example.com/ubi8/python-38.

 

Command with Podman :

$ podman inspect registry.lab.example.com/ubi8/python-38

In this command, the absence of docker:// is because Podman defaults to using the Docker registry protocol when a transport method is not specified. This simplifies the command for common use cases.

 

Key Differences :

  1. Transport Protocol Specification: Skopeo requires an explicit transport protocol (docker://) due to its support for multiple transport methods. Podman defaults to using the Docker registry protocol, simplifying commands for common scenarios.

  2. Tool Purpose and Scope: Skopeo is focused on working with container images across various transports and storage locations. Podman is primarily concerned with managing containers and images on a local system, with the ability to pull images from and push images to remote registries.

  3. User Experience: Skopeo's requirement for specifying a transport protocol makes it more versatile but also requires a bit more knowledge from the user about where and how the image is stored. Podman's design caters to simplicity and ease of use in everyday container management tasks.

[root@localhost ~]# Jitendra_Kumar
Travis
Moderator
Moderator
  • 170 Views

@chzheng2023 -

So @zeet did a really good job explaining the differences in the commands. However, there is one huge thing that was left out or more likely not emphasized enough ...

podman inspect inspects images locally. So it doesn't need the protocol specified to connect to a remote registry. In order to use Podman to inspect an image it must exist locally on the system.

skopeo inspect can inspect images locally and you don't need the docker:// if you are inspecting one locally on the system, but the SKOPEO command has the ability to inspect and interact with images on a remote registry in which you will want to specify the docker:// in the command.

 

https://github.com/containers/skopeo

Travis Michette, RHCA XIII
https://rhtapps.redhat.com/verify?certId=111-134-086
SENIOR TECHNICAL INSTRUCTOR / CERTIFIED INSTRUCTOR AND EXAMINER
Red Hat Certification + Training
chzheng2023
Mission Specialist
Mission Specialist
  • 156 Views

Thank you @zeet and @Travis, your explanations were crystal clear!

0 Kudos
Join the discussion
You must log in to join this conversation.