ML-TANGO / TANGO

public repo for TANGO (Target Aware No-code neural network Generation and Operation framework)
Other
68 stars 20 forks source link

kube_deploy container build fail #134

Closed HyunwooCho closed 4 months ago

HyunwooCho commented 4 months ago

I just wanted to see how all the docker images could be built, so tried to build them using docker compose. But it stuck to kube_deploy like that.

What do I miss, or any way to bypass it? I doubt my docker version might be old(20.10.23).

===================== Building kube_deploy Sending build context to Docker daemon 122.3MB Step 1/9 : FROM python:3.7 ---> c643d609e965 Step 2/9 : WORKDIR /app ---> Using cache ---> 90976a84b84b Step 3/9 : COPY . /app ---> Using cache ---> 7d41a7ff938e Step 4/9 : RUN mkdir /home/root && pip3 install kubernetes jinja2 ---> Using cache ---> 17e760a71a36 Step 5/9 : RUN apt-get update && apt-get -y install apt-transport-https ca-certificates curl gnupg2 zip unzip vim sudo software-properties-common ---> Using cache ---> 5d48347a97d1 Step 6/9 : RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - ---> Using cache ---> 14362c3ac155 Step 7/9 : RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" ---> Using cache ---> 28504868b5d1 Step 8/9 : RUN apt-get update ---> Running in 54d4b53d24ac Hit:1 http://deb.debian.org/debian bullseye InRelease Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [48.4 kB] Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB] Ign:4 https://download.docker.com/linux/ubuntu bullseye InRelease Err:5 https://download.docker.com/linux/ubuntu bullseye Release 404 Not Found [IP: 54.230.61.3 443] Reading package lists... E: The repository 'https://download.docker.com/linux/ubuntu bullseye Release' does not have a Release file. The command '/bin/sh -c apt-get update' returned a non-zero code: 100 ERROR: Service 'kube_deploy' failed to build : Build failed

=====================

ML-TANGO commented 4 months ago

Check following link:

There's no bullseye under the https://download.docker.com/linux/ubuntu/dists/, here ubuntu is used, while under the https://download.docker.com/linux/debian/dists/, bullseye folder exist, note that here distribution name is debian.

HyunwooCho commented 4 months ago

my ubuntu version: 20.04

Best way: upgrade ubuntu version to 22.04 One possible bypass: Comment these 2 lines (line 23 and 24) in deploy_targets/k8s/Dockerfile. However, I'm not sure if it will run normally or not; need to check it later.

23 #RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
24 #RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
HyunwooCho commented 4 months ago

I upgraded my ubuntu to jammy(22.04 LTS). But it did not work for me.

tenace@ondevice-gv100:~/tango$ docker-compose build kube_deploy
Building kube_deploy
[+] Building 26.2s (12/13)                                                                                           docker:default
 => [internal] load build definition from Dockerfile                                                                           0.0s
 => => transferring dockerfile: 1.03kB                                                                                         0.0s
 => [internal] load metadata for docker.io/library/python:3.7                                                                  0.0s
 => [internal] load .dockerignore                                                                                              0.0s
 => => transferring context: 2B                                                                                                0.0s
 => CACHED [1/9] FROM docker.io/library/python:3.7                                                                             0.0s
 => [internal] load build context                                                                                              0.2s
 => => transferring context: 122.24MB                                                                                          0.2s
 => [2/9] WORKDIR /app                                                                                                         0.1s
 => [3/9] COPY . /app                                                                                                          0.2s
 => [4/9] RUN mkdir /home/root && pip3 install kubernetes jinja2                                                               4.2s
 => [5/9] RUN apt-get update &&      apt-get -y install apt-transport-https      ca-certificates      curl      gnupg2        18.5s 
 => [6/9] RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -                                     0.8s 
 => [7/9] RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"         0.6s 
 => ERROR [8/9] RUN apt-get update                                                                                             1.5s 
------                                                                                                                              
 > [8/9] RUN apt-get update:                                                                                                        
0.539 Hit:1 http://deb.debian.org/debian bullseye InRelease                                                                         
0.539 Hit:2 http://deb.debian.org/debian-security bullseye-security InRelease                                                       
0.539 Hit:3 http://deb.debian.org/debian bullseye-updates InRelease                                                                 
0.732 Ign:4 https://download.docker.com/linux/ubuntu bullseye InRelease                                                             
1.135 Err:5 https://download.docker.com/linux/ubuntu bullseye Release
1.135   404  Not Found [IP: 54.230.61.3 443]
1.152 Reading package lists...
1.430 E: The repository 'https://download.docker.com/linux/ubuntu bullseye Release' does not have a Release file.
------
Dockerfile:27
--------------------
  25 |     
  26 |     
  27 | >>> RUN apt-get update 
  28 |     RUN apt-get install docker.io -y 
  29 |     # EXPOSE 8089
--------------------
ERROR: failed to solve: process "/bin/sh -c apt-get update" did not complete successfully: exit code: 100
ERROR: Service 'kube_deploy' failed to build : Build failed
tenace@ondevice-gv100:~/tango$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.4 LTS
Release:    22.04
Codename:   jammy

I don't think it is because of ubuntu version. So I changed deb url from ubuntu to debian in deploy_targets/k8s/Dockerfile and it worked. I don't know why this doesn't happen to other people; I heard that they didn't change anything but there are no errors. Anyway I think it may be a bug for someone else like me. Please fix it..

# RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
parkjb12 commented 4 months ago

I checked that it installed fine without modification with 'debian'. Note, my experimental environment is ubuntu jammy (22.04 LTS).

HyunwooCho commented 4 months ago

OK, I also did it. I deleted all the docker containers and their images and also tango repository in my local machine. And then I re-cloned tango and tried to rebuild them using docker-compose. I success building all the containers smoothly. I don't know what was the problem but anyone else (even me now) does not experience this, so I will close this issue.