forked from CircleCI-Archived/circleci-dockerfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Dockerfiles from https://circleci.com/gh/circleci/circleci-images/11035
- Loading branch information
1 parent
4c9b49d
commit 823351f
Showing
76 changed files
with
6,074 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM mongo:4.1.4-xenial | ||
|
||
CMD ["mongod", "--nojournal", "--noprealloc", "--smallfiles"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM circleci/mongo:4.1.4-xenial | ||
|
||
# The ENTRYPOINT for mongo is at /usr/local/bin/docker-entrypoint.sh, but pre-3.6 images also | ||
# include a symlink from /entrypoint.sh to that script. So, it's only necessary to update the real | ||
# entrypoint file. This comment can be removed once all pre-3.6 mongo images are gone. | ||
RUN sed -i '/exec "$@"/i mkdir \/dev\/shm\/mongo' /usr/local/bin/docker-entrypoint.sh | ||
|
||
CMD ["mongod", "--nojournal", "--noprealloc", "--smallfiles", "--dbpath=/dev/shm/mongo"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM mongo:4.1.4 | ||
|
||
CMD ["mongod", "--nojournal", "--noprealloc", "--smallfiles"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM circleci/mongo:4.1.4 | ||
|
||
# The ENTRYPOINT for mongo is at /usr/local/bin/docker-entrypoint.sh, but pre-3.6 images also | ||
# include a symlink from /entrypoint.sh to that script. So, it's only necessary to update the real | ||
# entrypoint file. This comment can be removed once all pre-3.6 mongo images are gone. | ||
RUN sed -i '/exec "$@"/i mkdir \/dev\/shm\/mongo' /usr/local/bin/docker-entrypoint.sh | ||
|
||
CMD ["mongod", "--nojournal", "--noprealloc", "--smallfiles", "--dbpath=/dev/shm/mongo"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM php:7.1.23-apache-jessie | ||
|
||
# make Apt non-interactive | ||
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \ | ||
&& echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci | ||
|
||
ENV DEBIAN_FRONTEND=noninteractive | ||
|
||
# man directory is missing in some base images | ||
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863199 | ||
RUN apt-get update \ | ||
&& mkdir -p /usr/share/man/man1 \ | ||
&& apt-get install -y \ | ||
git mercurial xvfb \ | ||
locales sudo openssh-client ca-certificates tar gzip parallel \ | ||
net-tools netcat unzip zip bzip2 gnupg curl wget | ||
|
||
|
||
# Set timezone to UTC by default | ||
RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime | ||
|
||
# Use unicode | ||
RUN locale-gen C.UTF-8 || true | ||
ENV LANG=C.UTF-8 | ||
|
||
# install jq | ||
RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \ | ||
&& chmod +x /usr/bin/jq \ | ||
&& jq --version | ||
|
||
# Install Docker | ||
|
||
# Docker.com returns the URL of the latest binary when you hit a directory listing | ||
# We curl this URL and `grep` the version out. | ||
# The output looks like this: | ||
|
||
#> # To install, run the following commands as root: | ||
#> curl -fsSLO https://download.docker.com/linux/static/stable/x86_64/docker-17.05.0-ce.tgz && tar --strip-components=1 -xvzf docker-17.05.0-ce.tgz -C /usr/local/bin | ||
#> | ||
#> # Then start docker in daemon mode: | ||
#> /usr/local/bin/dockerd | ||
|
||
RUN set -ex \ | ||
&& export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \ | ||
&& DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \ | ||
&& echo Docker URL: $DOCKER_URL \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \ | ||
&& ls -lha /tmp/docker.tgz \ | ||
&& tar -xz -C /tmp -f /tmp/docker.tgz \ | ||
&& mv /tmp/docker/* /usr/bin \ | ||
&& rm -rf /tmp/docker /tmp/docker.tgz \ | ||
&& which docker \ | ||
&& (docker version || true) | ||
|
||
# docker compose | ||
RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \ | ||
&& chmod +x /usr/bin/docker-compose \ | ||
&& docker-compose version | ||
|
||
# install dockerize | ||
RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \ | ||
&& tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \ | ||
&& rm -rf /tmp/dockerize-linux-amd64.tar.gz \ | ||
&& dockerize --version | ||
|
||
RUN groupadd --gid 3434 circleci \ | ||
&& useradd --uid 3434 --gid circleci --shell /bin/bash --create-home circleci \ | ||
&& echo 'circleci ALL=NOPASSWD: ALL' >> /etc/sudoers.d/50-circleci \ | ||
&& echo 'Defaults env_keep += "DEBIAN_FRONTEND"' >> /etc/sudoers.d/env_keep | ||
|
||
# BEGIN IMAGE CUSTOMIZATIONS | ||
|
||
# Install composer | ||
RUN php -r "copy('https://raw.githubusercontent.com/composer/getcomposer.org/master/web/installer', 'composer-setup.php');" && php composer-setup.php && php -r "unlink('composer-setup.php');" && mv composer.phar /usr/local/bin/composer | ||
|
||
# Install XDebug | ||
RUN (pecl install xdebug || pecl install xdebug-2.5.5) && docker-php-ext-enable xdebug | ||
|
||
# Install common extensions | ||
RUN apt install -y libicu-dev zlib1g-dev | ||
RUN docker-php-ext-configure intl && docker-php-ext-install intl | ||
RUN docker-php-ext-install zip | ||
# END IMAGE CUSTOMIZATIONS | ||
|
||
USER circleci | ||
|
||
CMD ["/bin/sh"] |
89 changes: 89 additions & 0 deletions
89
php/images/7.1.23-apache-jessie/browsers-legacy/Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM circleci/php:7.1.23-apache-jessie | ||
|
||
# install java 8 | ||
# | ||
RUN if grep -q Debian /etc/os-release && grep -q jessie /etc/os-release; then \ | ||
echo "deb http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-get update; sudo apt-get install -y -t jessie-backports openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; elif grep -q Ubuntu /etc/os-release && grep -q Trusty /etc/os-release; then \ | ||
echo "deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key DA1A4A13543B466853BAF164EB9B1D8886F44E2A \ | ||
&& sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; else \ | ||
sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; fi | ||
|
||
ENV OPENSSL_CONF / | ||
|
||
## install phantomjs | ||
# | ||
RUN PHANTOMJS_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/phantomjs-latest.tar.bz2" \ | ||
&& sudo apt-get install libfontconfig \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/phantomjs.tar.bz2 ${PHANTOMJS_URL} \ | ||
&& tar -x -C /tmp -f /tmp/phantomjs.tar.bz2 \ | ||
&& sudo mv /tmp/phantomjs-*-linux-x86_64/bin/phantomjs /usr/local/bin \ | ||
&& rm -rf /tmp/phantomjs.tar.bz2 /tmp/phantomjs-* \ | ||
&& phantomjs --version | ||
|
||
# install firefox | ||
|
||
# If you are upgrading to any version newer than 47.0.1, you must check the compatibility with | ||
# selenium. See https://github.com/SeleniumHQ/selenium/issues/2559#issuecomment-237079591 | ||
|
||
RUN FIREFOX_URL="https://s3.amazonaws.com/circle-downloads/firefox-mozilla-build_47.0.1-0ubuntu1_amd64.deb" \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/firefox.deb $FIREFOX_URL \ | ||
&& echo 'ef016febe5ec4eaf7d455a34579834bcde7703cb0818c80044f4d148df8473bb /tmp/firefox.deb' | sha256sum -c \ | ||
&& sudo dpkg -i /tmp/firefox.deb || sudo apt-get -f install \ | ||
&& sudo apt-get install -y libgtk3.0-cil-dev libasound2 libasound2 libdbus-glib-1-2 libdbus-1-3 \ | ||
&& rm -rf /tmp/firefox.deb \ | ||
&& firefox --version | ||
|
||
# install geckodriver—disabling this temporarily, we will likely want this code in the future, but until we're ready to upgrade our version of firefox to 53+, geckodriver wont' be compatible... | ||
|
||
# RUN export GECKODRIVER_LATEST_RELEASE_URL=$(curl https://api.github.com/repos/mozilla/geckodriver/releases/latest | jq -r ".assets[] | select(.name | test(\"linux64\")) | .browser_download_url") \ | ||
# && curl --silent --show-error --location --fail --retry 3 --output /tmp/geckodriver_linux64.tar.gz "$GECKODRIVER_LATEST_RELEASE_URL" \ | ||
# && cd /tmp \ | ||
# && tar xf geckodriver_linux64.tar.gz \ | ||
# && rm -rf geckodriver_linux64.tar.gz \ | ||
# && sudo mv geckodriver /usr/local/bin/geckodriver \ | ||
# && sudo chmod +x /usr/local/bin/geckodriver \ | ||
# && geckodriver --version | ||
|
||
# install chrome | ||
|
||
RUN curl --silent --show-error --location --fail --retry 3 --output /tmp/google-chrome-stable_current_amd64.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \ | ||
&& (sudo dpkg -i /tmp/google-chrome-stable_current_amd64.deb || sudo apt-get -fy install) \ | ||
&& rm -rf /tmp/google-chrome-stable_current_amd64.deb \ | ||
&& sudo sed -i 's|HERE/chrome"|HERE/chrome" --disable-setuid-sandbox --no-sandbox|g' \ | ||
"/opt/google/chrome/google-chrome" \ | ||
&& google-chrome --version | ||
|
||
RUN export CHROMEDRIVER_RELEASE=$(curl --location --fail --retry 3 http://chromedriver.storage.googleapis.com/LATEST_RELEASE) \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/chromedriver_linux64.zip "http://chromedriver.storage.googleapis.com/$CHROMEDRIVER_RELEASE/chromedriver_linux64.zip" \ | ||
&& cd /tmp \ | ||
&& unzip chromedriver_linux64.zip \ | ||
&& rm -rf chromedriver_linux64.zip \ | ||
&& sudo mv chromedriver /usr/local/bin/chromedriver \ | ||
&& sudo chmod +x /usr/local/bin/chromedriver \ | ||
&& chromedriver --version | ||
|
||
# install libgconf-2-4 manually since chrome no longer pulls it in automatically | ||
RUN sudo apt-get install -y libgconf-2-4 | ||
|
||
# start xvfb automatically to avoid needing to express in circle.yml | ||
ENV DISPLAY :99 | ||
RUN printf '#!/bin/sh\nXvfb :99 -screen 0 1280x1024x24 &\nexec "$@"\n' > /tmp/entrypoint \ | ||
&& chmod +x /tmp/entrypoint \ | ||
&& sudo mv /tmp/entrypoint /docker-entrypoint.sh | ||
|
||
# ensure that the build agent doesn't override the entrypoint | ||
LABEL com.circleci.preserve-entrypoint=true | ||
|
||
ENTRYPOINT ["/docker-entrypoint.sh"] | ||
CMD ["/bin/sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
FROM circleci/php:7.1.23-apache-jessie | ||
|
||
# install java 8 | ||
# | ||
RUN if grep -q Debian /etc/os-release && grep -q jessie /etc/os-release; then \ | ||
echo "deb http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-get update; sudo apt-get install -y -t jessie-backports openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; elif grep -q Ubuntu /etc/os-release && grep -q Trusty /etc/os-release; then \ | ||
echo "deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key DA1A4A13543B466853BAF164EB9B1D8886F44E2A \ | ||
&& sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; else \ | ||
sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; fi \ | ||
&& sudo apt-get install -y bzip2 libgconf-2-4 # for extracting firefox and running chrome, respectively | ||
|
||
# install firefox | ||
# | ||
RUN FIREFOX_URL="https://download.mozilla.org/?product=firefox-latest-ssl&os=linux64&lang=en-US" \ | ||
&& ACTUAL_URL=$(curl -Ls -o /dev/null -w %{url_effective} $FIREFOX_URL) \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/firefox.tar.bz2 $ACTUAL_URL \ | ||
&& sudo tar -xvjf /tmp/firefox.tar.bz2 -C /opt \ | ||
&& sudo ln -s /opt/firefox/firefox /usr/local/bin/firefox \ | ||
&& sudo apt-get install -y libgtk3.0-cil-dev libasound2 libasound2 libdbus-glib-1-2 libdbus-1-3 \ | ||
&& rm -rf /tmp/firefox.* \ | ||
&& firefox --version | ||
|
||
# install geckodriver | ||
|
||
RUN export GECKODRIVER_LATEST_RELEASE_URL=$(curl https://api.github.com/repos/mozilla/geckodriver/releases/latest | jq -r ".assets[] | select(.name | test(\"linux64\")) | .browser_download_url") \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/geckodriver_linux64.tar.gz "$GECKODRIVER_LATEST_RELEASE_URL" \ | ||
&& cd /tmp \ | ||
&& tar xf geckodriver_linux64.tar.gz \ | ||
&& rm -rf geckodriver_linux64.tar.gz \ | ||
&& sudo mv geckodriver /usr/local/bin/geckodriver \ | ||
&& sudo chmod +x /usr/local/bin/geckodriver \ | ||
&& geckodriver --version | ||
|
||
# install chrome | ||
|
||
RUN curl --silent --show-error --location --fail --retry 3 --output /tmp/google-chrome-stable_current_amd64.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \ | ||
&& (sudo dpkg -i /tmp/google-chrome-stable_current_amd64.deb || sudo apt-get -fy install) \ | ||
&& rm -rf /tmp/google-chrome-stable_current_amd64.deb \ | ||
&& sudo sed -i 's|HERE/chrome"|HERE/chrome" --disable-setuid-sandbox --no-sandbox|g' \ | ||
"/opt/google/chrome/google-chrome" \ | ||
&& google-chrome --version | ||
|
||
RUN export CHROMEDRIVER_RELEASE=$(curl --location --fail --retry 3 http://chromedriver.storage.googleapis.com/LATEST_RELEASE) \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/chromedriver_linux64.zip "http://chromedriver.storage.googleapis.com/$CHROMEDRIVER_RELEASE/chromedriver_linux64.zip" \ | ||
&& cd /tmp \ | ||
&& unzip chromedriver_linux64.zip \ | ||
&& rm -rf chromedriver_linux64.zip \ | ||
&& sudo mv chromedriver /usr/local/bin/chromedriver \ | ||
&& sudo chmod +x /usr/local/bin/chromedriver \ | ||
&& chromedriver --version | ||
|
||
# start xvfb automatically to avoid needing to express in circle.yml | ||
ENV DISPLAY :99 | ||
RUN printf '#!/bin/sh\nXvfb :99 -screen 0 1280x1024x24 &\nexec "$@"\n' > /tmp/entrypoint \ | ||
&& chmod +x /tmp/entrypoint \ | ||
&& sudo mv /tmp/entrypoint /docker-entrypoint.sh | ||
|
||
# ensure that the build agent doesn't override the entrypoint | ||
LABEL com.circleci.preserve-entrypoint=true | ||
|
||
ENTRYPOINT ["/docker-entrypoint.sh"] | ||
CMD ["/bin/sh"] |
92 changes: 92 additions & 0 deletions
92
php/images/7.1.23-apache-jessie/node-browsers-legacy/Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
### | ||
### DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
### | ||
|
||
# | ||
# DO NOT MODIFY THIS FILE. THIS FILE HAS BEEN AUTOGENERATED | ||
# | ||
FROM circleci/php:7.1.23-apache-jessie-node | ||
|
||
# install java 8 | ||
# | ||
RUN if grep -q Debian /etc/os-release && grep -q jessie /etc/os-release; then \ | ||
echo "deb http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://http.us.debian.org/debian/ jessie-backports main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-get update; sudo apt-get install -y -t jessie-backports openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; elif grep -q Ubuntu /etc/os-release && grep -q Trusty /etc/os-release; then \ | ||
echo "deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& echo "deb-src http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list \ | ||
&& sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key DA1A4A13543B466853BAF164EB9B1D8886F44E2A \ | ||
&& sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; else \ | ||
sudo apt-get update; sudo apt-get install -y openjdk-8-jre openjdk-8-jre-headless openjdk-8-jdk openjdk-8-jdk-headless \ | ||
; fi | ||
|
||
ENV OPENSSL_CONF / | ||
|
||
## install phantomjs | ||
# | ||
RUN PHANTOMJS_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/phantomjs-latest.tar.bz2" \ | ||
&& sudo apt-get install libfontconfig \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/phantomjs.tar.bz2 ${PHANTOMJS_URL} \ | ||
&& tar -x -C /tmp -f /tmp/phantomjs.tar.bz2 \ | ||
&& sudo mv /tmp/phantomjs-*-linux-x86_64/bin/phantomjs /usr/local/bin \ | ||
&& rm -rf /tmp/phantomjs.tar.bz2 /tmp/phantomjs-* \ | ||
&& phantomjs --version | ||
|
||
# install firefox | ||
|
||
# If you are upgrading to any version newer than 47.0.1, you must check the compatibility with | ||
# selenium. See https://github.com/SeleniumHQ/selenium/issues/2559#issuecomment-237079591 | ||
|
||
RUN FIREFOX_URL="https://s3.amazonaws.com/circle-downloads/firefox-mozilla-build_47.0.1-0ubuntu1_amd64.deb" \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/firefox.deb $FIREFOX_URL \ | ||
&& echo 'ef016febe5ec4eaf7d455a34579834bcde7703cb0818c80044f4d148df8473bb /tmp/firefox.deb' | sha256sum -c \ | ||
&& sudo dpkg -i /tmp/firefox.deb || sudo apt-get -f install \ | ||
&& sudo apt-get install -y libgtk3.0-cil-dev libasound2 libasound2 libdbus-glib-1-2 libdbus-1-3 \ | ||
&& rm -rf /tmp/firefox.deb \ | ||
&& firefox --version | ||
|
||
# install geckodriver—disabling this temporarily, we will likely want this code in the future, but until we're ready to upgrade our version of firefox to 53+, geckodriver wont' be compatible... | ||
|
||
# RUN export GECKODRIVER_LATEST_RELEASE_URL=$(curl https://api.github.com/repos/mozilla/geckodriver/releases/latest | jq -r ".assets[] | select(.name | test(\"linux64\")) | .browser_download_url") \ | ||
# && curl --silent --show-error --location --fail --retry 3 --output /tmp/geckodriver_linux64.tar.gz "$GECKODRIVER_LATEST_RELEASE_URL" \ | ||
# && cd /tmp \ | ||
# && tar xf geckodriver_linux64.tar.gz \ | ||
# && rm -rf geckodriver_linux64.tar.gz \ | ||
# && sudo mv geckodriver /usr/local/bin/geckodriver \ | ||
# && sudo chmod +x /usr/local/bin/geckodriver \ | ||
# && geckodriver --version | ||
|
||
# install chrome | ||
|
||
RUN curl --silent --show-error --location --fail --retry 3 --output /tmp/google-chrome-stable_current_amd64.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \ | ||
&& (sudo dpkg -i /tmp/google-chrome-stable_current_amd64.deb || sudo apt-get -fy install) \ | ||
&& rm -rf /tmp/google-chrome-stable_current_amd64.deb \ | ||
&& sudo sed -i 's|HERE/chrome"|HERE/chrome" --disable-setuid-sandbox --no-sandbox|g' \ | ||
"/opt/google/chrome/google-chrome" \ | ||
&& google-chrome --version | ||
|
||
RUN export CHROMEDRIVER_RELEASE=$(curl --location --fail --retry 3 http://chromedriver.storage.googleapis.com/LATEST_RELEASE) \ | ||
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/chromedriver_linux64.zip "http://chromedriver.storage.googleapis.com/$CHROMEDRIVER_RELEASE/chromedriver_linux64.zip" \ | ||
&& cd /tmp \ | ||
&& unzip chromedriver_linux64.zip \ | ||
&& rm -rf chromedriver_linux64.zip \ | ||
&& sudo mv chromedriver /usr/local/bin/chromedriver \ | ||
&& sudo chmod +x /usr/local/bin/chromedriver \ | ||
&& chromedriver --version | ||
|
||
# install libgconf-2-4 manually since chrome no longer pulls it in automatically | ||
RUN sudo apt-get install -y libgconf-2-4 | ||
|
||
# start xvfb automatically to avoid needing to express in circle.yml | ||
ENV DISPLAY :99 | ||
RUN printf '#!/bin/sh\nXvfb :99 -screen 0 1280x1024x24 &\nexec "$@"\n' > /tmp/entrypoint \ | ||
&& chmod +x /tmp/entrypoint \ | ||
&& sudo mv /tmp/entrypoint /docker-entrypoint.sh | ||
|
||
# ensure that the build agent doesn't override the entrypoint | ||
LABEL com.circleci.preserve-entrypoint=true | ||
|
||
ENTRYPOINT ["/docker-entrypoint.sh"] | ||
CMD ["/bin/sh"] |
Oops, something went wrong.