2

I am a bit confused with the terms Interoperability vs portability in container world. Containers are designed to be portable to run the application on any environment but then does it also solve the problem of interoperability?

I guess, I do not understand what does interoperable really means but does the OCI specs solve the problem of portability or interoperability? Especially the runtime specs which allows an OCI image to be run against any OCI compliant runtime.

Wytrzymały Wiktor
  • 11,492
  • 5
  • 29
  • 37
Metalhead
  • 1,429
  • 3
  • 15
  • 34
  • Portability Have a look at https://www.redhat.com/en/blog/containers-understanding-difference-between-portability-compatibility-and-supportability and https://blogs.microsoft.com/eupolicy/2017/12/15/interoperability-portability-cloud-computing/ and – Gari Singh Aug 28 '21 at 07:51

1 Answers1

0

As mentioned in the link 1 provided in comment, interoperability means the ability for two systems to be able to communicate. This usually applies to private, public and hybrid clouds.
Meanwhile, portability targets containers, which once created can then be run on different runtimes without the need to be modified or adapted 2.

OCI specification aims to make the containers portable, but no necessarily interoperable. Systems following this standard can run the same containers, but it does not mean they can work together.

Sergiusz
  • 1,175
  • 4
  • 13
  • Well, they are working together. A container built using podman can run on cri container or containerd. So why is it not called interoperable? – Metalhead Aug 30 '21 at 10:07
  • You described portability. Interoperable would imply podman can exchange data with containerd. – Sergiusz Aug 30 '21 at 10:25
  • And image file is not data contract which helps it run to any container runtime? Shows interoperability, isn't it? – Metalhead Aug 31 '21 at 11:04