1# Copyright 2023 The ChromiumOS Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5FROM docker.io/ubuntu:kinetic-20221130 6 7# Allow APT to cache packages between docker image builds 8RUN rm -f /etc/apt/apt.conf.d/docker-clean; echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache 9 10# Install dependencies (APT and cargo packages are cached between image builds for faster iterative builds). 11COPY --chmod=555 tools/install-deps rust-toolchain /tools/ 12RUN --mount=type=cache,target=/var/cache/apt,sharing=private \ 13 --mount=type=cache,target=/var/lib/apt,sharing=private \ 14 --mount=type=cache,target=/scratch/cargo_target,sharing=private \ 15 apt-get update \ 16 # sudo is installed here since it's required by install-deps. 17 # tzdata is installed here so it won't later prompt for configuration. 18 && DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get install --yes sudo tzdata \ 19 # Run crosvm's install-deps 20 && cd tools \ 21 && ./install-deps 22 23ENV PATH=$PATH:~/.cargo/bin 24 25VOLUME /workspace 26WORKDIR /workspace 27