Dockerfile.linux 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # Copyright (c) Contributors to the Open 3D Engine Project.
  2. # For complete copyright and license terms please see the LICENSE at the root of this distribution.
  3. #
  4. # SPDX-License-Identifier: Apache-2.0 OR MIT
  5. #
  6. # This docker file uses ubuntu 20.04 as the base image so that the AWS Native C++ libraries will use OpenSSL 3 as the base
  7. # for its dependencies
  8. #
  9. FROM public.ecr.aws/ubuntu/ubuntu:20.04_stable
  10. WORKDIR /data/workspace
  11. ARG DOCKER_BUILD_SCRIPT
  12. # Initilize apt cache
  13. RUN apt-get clean && apt-get update
  14. # Setup time zone and locale data (necessary for SSL and HTTPS packages)
  15. RUN DEBIAN_FRONTEND="noninteractive" apt-get -y install tzdata locales keyboard-configuration gpg wget
  16. RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
  17. dpkg-reconfigure --frontend=noninteractive locales && \
  18. update-locale LANG=en_US.UTF-8
  19. ENV LANG=en_US.UTF-8
  20. # Setup to use a more recent version of cmake (required) from kitware (3.22) than whats available from 20.04 by default
  21. RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null && \
  22. echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null && \
  23. apt-get update
  24. # Install the development packages needed to build Qt from source
  25. RUN apt-get install -y build-essential \
  26. pkg-config \
  27. ninja-build \
  28. git \
  29. cmake \
  30. libxcb1-dev \
  31. python3-distutils \
  32. libx11-xcb-dev \
  33. libxkbcommon-dev \
  34. libwayland-dev \
  35. libxrandr-dev \
  36. libegl1-mesa-dev
  37. RUN apt upgrade -y
  38. # Prepare a target folder within the container to install the build artifacts tp
  39. RUN mkdir -p /data/workspace/build
  40. ARG CACHEBUST=1
  41. # Copy the build script specific to this Docker script in order to execute the build
  42. COPY $DOCKER_BUILD_SCRIPT /data/workspace/