Dockerfile.gpu 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. FROM nvidia/cuda:11.2.0-cudnn8-devel-ubuntu18.04
  2. # This is a copy of the regular Dockerfile
  3. # adjusted for ubuntu 18 (removed python-is-python3)
  4. ARG REMOTE_CACHE_URL
  5. ARG BUILDKITE_PULL_REQUEST
  6. ARG BUILDKITE_COMMIT
  7. ARG BUILDKITE_PULL_REQUEST_BASE_BRANCH
  8. ENV DEBIAN_FRONTEND=noninteractive
  9. ENV TZ=America/Los_Angeles
  10. ENV BUILDKITE=true
  11. ENV CI=true
  12. ENV PYTHON=3.6
  13. ENV RAY_USE_RANDOM_PORTS=1
  14. ENV RAY_DEFAULT_BUILD=1
  15. ENV RAY_INSTALL_JAVA=1
  16. ENV BUILDKITE_PULL_REQUEST=${BUILDKITE_PULL_REQUEST}
  17. ENV BUILDKITE_COMMIT=${BUILDKITE_COMMIT}
  18. ENV BUILDKITE_PULL_REQUEST_BASE_BRANCH=${BUILDKITE_PULL_REQUEST_BASE_BRANCH}
  19. # For wheel build
  20. # https://github.com/docker-library/docker/blob/master/20.10/docker-entrypoint.sh
  21. ENV DOCKER_TLS_CERTDIR=/certs
  22. ENV DOCKER_HOST=tcp://docker:2376
  23. ENV DOCKER_TLS_VERIFY=1
  24. ENV DOCKER_CERT_PATH=/certs/client
  25. ENV TRAVIS_COMMIT=${BUILDKITE_COMMIT}
  26. ENV BUILDKITE_BAZEL_CACHE_URL=${REMOTE_CACHE_URL}
  27. RUN apt-get update -qq && apt-get upgrade -qq
  28. RUN apt-get install -y -qq \
  29. software-properties-common curl git build-essential \
  30. sudo unzip unrar apt-utils dialog tzdata wget rsync \
  31. language-pack-en tmux cmake gdb vim htop \
  32. libgtk2.0-dev zlib1g-dev libgl1-mesa-dev maven \
  33. openjdk-8-jre openjdk-8-jdk
  34. # add-apt-repository is available after installing software-properties-common
  35. RUN add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update -qq && \
  36. apt-get install -y -qq gcc-9 g++-9
  37. RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9 \
  38. --slave /usr/bin/gcov gcov /usr/bin/gcov-9
  39. RUN curl -o- https://get.docker.com | sh
  40. # System conf for tests
  41. RUN locale -a
  42. ENV LC_ALL=en_US.utf8
  43. ENV LANG=en_US.utf8
  44. RUN echo "ulimit -c 0" >> /root/.bashrc
  45. # Setup Bazel caches
  46. RUN (echo "build --remote_cache=${REMOTE_CACHE_URL}" >> /root/.bazelrc); \
  47. (if [ "${BUILDKITE_PULL_REQUEST}" != "false" ]; then (echo "build --remote_upload_local_results=false" >> /root/.bazelrc); fi); \
  48. cat /root/.bazelrc
  49. RUN mkdir /ray
  50. WORKDIR /ray
  51. # Below should be re-run each time
  52. COPY . .
  53. RUN ./ci/travis/ci.sh init
  54. RUN bash --login -i ./ci/travis/ci.sh build
  55. # Run determine test to run
  56. RUN bash --login -i -c "python ./ci/travis/determine_tests_to_run.py --output=json > affected_set.json"
  57. RUN cat affected_set.json