Search code examples
androiddockerubuntuandroid-sourcedocker-in-docker

Android Cuttlefish docker image build fails to install host packages in container


Following these steps https://github.com/google/android-cuttlefish/blob/main/docker/README.md to build the Docker images to run Cuttlefish on an Ubuntu 23.10 host results in the following output and error after running ./build.sh:


###
### Building docker image
###
[+] Building 53.1s (13/20)                                                                                                                     docker:default
 => [internal] load build definition from Dockerfile                                                                                                     0.0s
 => => transferring dockerfile: 4.37kB                                                                                                                   0.0s
 => [internal] load metadata for docker.io/library/debian:stable-20211011                                                                                0.2s
 => [internal] load .dockerignore                                                                                                                        0.0s
 => => transferring context: 2B                                                                                                                          0.0s
 => [cuttlefish-softgpu  1/16] FROM docker.io/library/debian:stable-20211011@sha256:9de81807d160cd87c476ffe90215d85478d1d2e2c1d4973b54d993a34d3986de     0.0s
 => [internal] load build context                                                                                                                        0.0s
 => => transferring context: 89B                                                                                                                         0.0s
 => CACHED [cuttlefish-softgpu  2/16] WORKDIR /root                                                                                                      0.0s
 => [cuttlefish-softgpu  3/16] RUN set -x                                                                                                                0.5s
 => [cuttlefish-softgpu  4/16] RUN apt-get update     && apt-get install --no-install-recommends -y systemd     && apt-get clean     && rm -rf /var/lib  7.6s
 => [cuttlefish-softgpu  5/16] RUN rm -f /lib/systemd/system/multi-user.target.wants/*     /etc/systemd/system/*.wants/*     /lib/systemd/system/local-  0.3s
 => [cuttlefish-softgpu  6/16] RUN apt-get update     && apt-get install --no-install-recommends -y apt-utils sudo vim gawk coreutils        openssh-s  43.6s 
 => [cuttlefish-softgpu  7/16] RUN if test $(uname -m) == aarch64; then      dpkg --add-architecture amd64      && apt-get update      && apt-get insta  0.2s 
 => [cuttlefish-softgpu  8/16] COPY ./out/*.deb ./android-cuttlefish/out/                                                                                0.2s 
 => ERROR [cuttlefish-softgpu  9/16] RUN cd /root/android-cuttlefish/out     && apt-get install --no-install-recommends -y -f ./cuttlefish-base_*.deb    0.5s 
------                                                                                                                                                        
 > [cuttlefish-softgpu  9/16] RUN cd /root/android-cuttlefish/out     && apt-get install --no-install-recommends -y -f ./cuttlefish-base_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-user_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-common_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-orchestration_*.deb     && rm -rvf ./cuttlefish-base_*.deb     && rm -rvf ./cuttlefish-user_*.deb     && rm -rvf ./cuttlefish-common_*.deb     && rm -rvf ./cuttlefish-orchestration_*.deb     && cd /root:
0.260 Reading package lists...
0.497 E: Unsupported file ./cuttlefish-base_*.deb given on commandline
------
Dockerfile:56
--------------------
  55 |     
  56 | >>> RUN cd /root/android-cuttlefish/out \
  57 | >>>     && apt-get install --no-install-recommends -y -f ./cuttlefish-base_*.deb \
  58 | >>>     && apt-get install --no-install-recommends -y -f ./cuttlefish-user_*.deb \
  59 | >>>     && apt-get install --no-install-recommends -y -f ./cuttlefish-common_*.deb \
  60 | >>>     && apt-get install --no-install-recommends -y -f ./cuttlefish-orchestration_*.deb \
  61 | >>>     && rm -rvf ./cuttlefish-base_*.deb \
  62 | >>>     && rm -rvf ./cuttlefish-user_*.deb \
  63 | >>>     && rm -rvf ./cuttlefish-common_*.deb \
  64 | >>>     && rm -rvf ./cuttlefish-orchestration_*.deb \
  65 | >>>     && cd /root
  66 |     
--------------------
ERROR: failed to solve: process "/bin/bash -c cd /root/android-cuttlefish/out     && apt-get install --no-install-recommends -y -f ./cuttlefish-base_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-user_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-common_*.deb     && apt-get install --no-install-recommends -y -f ./cuttlefish-orchestration_*.deb     && rm -rvf ./cuttlefish-base_*.deb     && rm -rvf ./cuttlefish-user_*.deb     && rm -rvf ./cuttlefish-common_*.deb     && rm -rvf ./cuttlefish-orchestration_*.deb     && cd /root" did not complete successfully: exit code: 100

I tried with the exact filenames and it still fails, so it's not a problem with globbing.


Solution

  • It looks like the Docker container is no longer supported as its been removed in this commit: https://github.com/google/android-cuttlefish/commit/387dd28fe40d8fd217b363aa95f3b326af2342e7