Bug 1801736 - Using Docker images for Applications not possible in Openshift 4.3.0 [NEEDINFO]
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: 2020-05-04 11:36 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:
obulatov: needinfo? (ppod)


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


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