Bug 1801736 - Using Docker images for Applications not possible in Openshift 4.3.0
Summary: Using Docker images for Applications not possible in Openshift 4.3.0
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Dev Console
Version: 4.3.0
Hardware: x86_64
OS: Linux
unspecified
urgent
Target Milestone: ---
: 4.4.0
Assignee: Jaivardhan Kumar
QA Contact: spathak@redhat.com
URL:
Whiteboard:
Depends On:
Blocks: 1804077
TreeView+ depends on / blocked
 
Reported: 2020-02-11 14:54 UTC by przem123
Modified: 2023-09-14 05:52 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Cause: In the case of k8 deployment if the images from external image registry had tags i.e `openshift/hello-world:1.0` then tags were not getting applied. Consequence: User unable to import external images with tags in the case for deployments Fix: Passed proper tag for the deployment
Clone Of:
: 1804077 (view as bug list)
Environment:
Last Closed: 2020-05-04 11:35:29 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Using Docker images for Applications is possible in Openshift 4.4.0 (90.19 KB, image/png)
2020-02-18 22:22 UTC, spathak@redhat.com
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github openshift console pull 4301 0 None closed Bug 1801736: fixes issue with external image registry not working for tags 2021-01-27 16:57:53 UTC
Red Hat Product Errata RHBA-2020:0581 0 None None None 2020-05-04 11:36:01 UTC

Description przem123 2020-02-11 14:54:37 UTC
Description of problem:
On Openshift 4.3.0 I cannot create application as Developer from Catalog when I use image URLs from Docker hub.



Steps to Reproduce:

As developer click on +Add. Then, select 'Container Image'. Insert an URL from Docker hub, in my case 'tensorflow/tensorflow:latest-jupyter'. Now create a deployment. The pods cannot be started because the image tag is incorrectly resolved to 'tensorflow:'.

[root@worker01 ~]# oc get pods -n przemek
NAME                         READY   STATUS             RESTARTS   AGE
tensorflow-cb48f6c67-c8vp5   0/1     InvalidImageName   0          32s

[root@worker01 ~]# oc logs tensorflow-cb48f6c67-c8vp5 -n przemek
Error from server (BadRequest): container "tensorflow" in pod "tensorflow-cb48f6c67-c8vp5" is waiting to start: InvalidImageName

[root@worker01 ~]# oc describe pod tensorflow-cb48f6c67-c8vp5 -n przemek
Name:         tensorflow-cb48f6c67-c8vp5
Namespace:    przemek
Priority:     0
Node:         worker02.ocp4.scale.com/192.168.1.16
Start Time:   Tue, 11 Feb 2020 15:49:28 +0100
Labels:       app=tensorflow
              deploymentconfig=tensorflow
              pod-template-hash=cb48f6c67
Annotations:  k8s.v1.cni.cncf.io/networks-status:
                [{
                    "name": "openshift-sdn",
                    "interface": "eth0",
                    "ips": [
                        "10.128.2.58"
                    ],
                    "dns": {},
                    "default-route": [
                        "10.128.2.1"
                    ]
                }]
              openshift.io/generated-by: OpenShiftWebConsole
              openshift.io/scc: restricted
Status:       Pending
IP:           10.128.2.58
IPs:
  IP:           10.128.2.58
Controlled By:  ReplicaSet/tensorflow-cb48f6c67
Containers:
  tensorflow:
    Container ID:   
    Image:          tensorflow:
    Image ID:       
    Port:           8888/TCP
    Host Port:      0/TCP
    State:          Waiting
      Reason:       InvalidImageName
    Ready:          False
    Restart Count:  0
    Environment:    <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-nz6m4 (ro)
Conditions:
  Type              Status
  Initialized       True 
  Ready             False 
  ContainersReady   False 
  PodScheduled      True 
Volumes:
  default-token-nz6m4:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-nz6m4
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason         Age               From                              Message
  ----     ------         ----              ----                              -------
  Normal   Scheduled      <unknown>         default-scheduler                 Successfully assigned przemek/tensorflow-cb48f6c67-c8vp5 to worker02.ocp4.scale.com
  Warning  InspectFailed  8s (x8 over 79s)  kubelet, worker02.ocp4.scale.com  Failed to apply default image tag "tensorflow:": couldn't parse image reference "tensorflow:": invalid reference format
  Warning  Failed         8s (x8 over 79s)  kubelet, worker02.ocp4.scale.com  Error: InvalidImageName

Comment 2 Adam Kaplan 2020-02-11 16:12:57 UTC
Using a URL like `tensorflow/tensorflow:latest-jupyter` should work as is. However as a work-around you can try `docker.io/tensorflow/tensorflow:latest-jupyter`.

Comment 3 przem123 2020-02-11 16:23:33 UTC
No luck with the URL you provided. I got the same error messages.


[root@worker01 ~]# oc get pods -n przemek
NAME                         READY   STATUS             RESTARTS   AGE
tensorflow-cb48f6c67-dgmqp   0/1     InvalidImageName   0          54s


[root@worker01 ~]# oc logs tensorflow-cb48f6c67-dgmqp -n przemek
Error from server (BadRequest): container "tensorflow" in pod "tensorflow-cb48f6c67-dgmqp" is waiting to start: InvalidImageName


[root@worker01 ~]# oc describe pod tensorflow-cb48f6c67-dgmqp -n przemek
Name:         tensorflow-cb48f6c67-dgmqp
Namespace:    przemek
Priority:     0
Node:         worker02.ocp4.scale.com/192.168.1.16
Start Time:   Tue, 11 Feb 2020 17:21:06 +0100
Labels:       app=tensorflow
              deploymentconfig=tensorflow
              pod-template-hash=cb48f6c67
Annotations:  k8s.v1.cni.cncf.io/networks-status:
                [{
                    "name": "openshift-sdn",
                    "interface": "eth0",
                    "ips": [
                        "10.128.2.69"
                    ],
                    "dns": {},
                    "default-route": [
                        "10.128.2.1"
                    ]
                }]
              openshift.io/generated-by: OpenShiftWebConsole
              openshift.io/scc: restricted
Status:       Pending
IP:           10.128.2.69
IPs:
  IP:           10.128.2.69
Controlled By:  ReplicaSet/tensorflow-cb48f6c67
Containers:
  tensorflow:
    Container ID:   
    Image:          tensorflow:
    Image ID:       
    Port:           8888/TCP
    Host Port:      0/TCP
    State:          Waiting
      Reason:       InvalidImageName
    Ready:          False
    Restart Count:  0
    Environment:    <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-nz6m4 (ro)
Conditions:
  Type              Status
  Initialized       True 
  Ready             False 
  ContainersReady   False 
  PodScheduled      True 
Volumes:
  default-token-nz6m4:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-nz6m4
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason         Age                From                              Message
  ----     ------         ----               ----                              -------
  Normal   Scheduled      <unknown>          default-scheduler                 Successfully assigned przemek/tensorflow-cb48f6c67-dgmqp to worker02.ocp4.scale.com
  Warning  InspectFailed  14s (x7 over 69s)  kubelet, worker02.ocp4.scale.com  Failed to apply default image tag "tensorflow:": couldn't parse image reference "tensorflow:": invalid reference format
  Warning  Failed         14s (x7 over 69s)  kubelet, worker02.ocp4.scale.com  Error: InvalidImageName

Comment 4 Oleg Bulatov 2020-02-11 17:05:18 UTC
It's interesting to see the deploymentconfig, what does `oc get dc tensorflow -o yaml` print?

Comment 6 cvogt 2020-02-11 18:23:12 UTC
Tested in 4.4 as well and observed the same failure.

Tag is incorrectly set when choosing to create Deployments.

It works when creating a Deployment Config.

Fails again when creating a Knative service: `"image-registry.openshift-image-registry.svc:5000/cvogt/tensorflow-kn:latest-jupyter": failed to resolve image to digest: failed to fetch image information: MANIFEST_UNKNOWN: manifest unknown; map[Tag:latest-jupyter].`

Comment 7 cvogt 2020-02-11 21:51:00 UTC
Why is this marked as a test blocker?

Comment 8 przem123 2020-02-11 23:01:13 UTC
I would like to test specific workloads with docker images. These are blocked as for now with deployments.

Comment 11 spathak@redhat.com 2020-02-18 22:21:04 UTC
Verified on ci build: 4.4.0-0.ci-2020-02-18-102514
Chrome browser: 76.0.3809.132

Comment 12 spathak@redhat.com 2020-02-18 22:22:16 UTC
Created attachment 1663900 [details]
Using Docker images for Applications is possible in Openshift 4.4.0

Comment 14 errata-xmlrpc 2020-05-04 11:35:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:0581

Comment 15 Red Hat Bugzilla 2023-09-14 05:52:18 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days


Note You need to log in before you can comment on or make changes to this bug.