|
| 1 | +# build it with command |
| 2 | +# docker build -t cypress/base-internal:22.19.0-trixie --platform linux/amd64 . |
| 3 | +# |
| 4 | +FROM node:22.19.0-trixie-slim |
| 5 | + |
| 6 | +RUN apt-get update && \ |
| 7 | + apt-get install --no-install-recommends -y \ |
| 8 | + libgtk-3-0t64 \ |
| 9 | + libnotify-dev \ |
| 10 | + libgbm-dev \ |
| 11 | + libnss3 \ |
| 12 | + libxss1 \ |
| 13 | + libasound2t64 \ |
| 14 | + libxtst6 \ |
| 15 | + procps \ |
| 16 | + xauth \ |
| 17 | + xvfb \ |
| 18 | + build-essential \ |
| 19 | + # install text editors |
| 20 | + vim-tiny \ |
| 21 | + nano \ |
| 22 | + # install emoji font |
| 23 | + fonts-noto-color-emoji \ |
| 24 | + # install Chinese fonts |
| 25 | + # this list was copied from https://github.com/jim3ma/docker-leanote |
| 26 | + fonts-arphic-bkai00mp \ |
| 27 | + fonts-arphic-bsmi00lp \ |
| 28 | + fonts-arphic-gbsn00lp \ |
| 29 | + fonts-arphic-gkai00mp \ |
| 30 | + fonts-arphic-ukai \ |
| 31 | + fonts-arphic-uming \ |
| 32 | + ttf-wqy-zenhei \ |
| 33 | + xfonts-wqy \ |
| 34 | + # clean up |
| 35 | + && rm -rf /var/lib/apt/lists/* \ |
| 36 | + && apt-get clean |
| 37 | + |
| 38 | +USER root |
| 39 | + |
| 40 | +RUN node --version |
| 41 | + |
| 42 | + |
| 43 | +# Install dependencies |
| 44 | +RUN apt-get update && \ |
| 45 | + apt-get install -y \ |
| 46 | + fonts-liberation \ |
| 47 | + git \ |
| 48 | + libcurl4 \ |
| 49 | + libcurl3-gnutls \ |
| 50 | + libvulkan1 \ |
| 51 | + xdg-utils \ |
| 52 | + wget \ |
| 53 | + # needed for circle orb browsers to install firefox |
| 54 | + gpg \ |
| 55 | + # needed for circle orb browsers to install chromedriver |
| 56 | + jq \ |
| 57 | + curl \ |
| 58 | + # chrome dependencies |
| 59 | + libu2f-udev \ |
| 60 | + # firefox dependencies |
| 61 | + bzip2 \ |
| 62 | + # add codecs needed for video playback in firefox |
| 63 | + # https://github.com/cypress-io/cypress-docker-images/issues/150 |
| 64 | + mplayer \ |
| 65 | + \ |
| 66 | + # clean up |
| 67 | + && rm -rf /var/lib/apt/lists/* \ |
| 68 | + && apt-get clean |
| 69 | + |
| 70 | +# install libappindicator3-1 - not included with Debian 13 |
| 71 | +RUN wget --no-verbose /usr/src/libappindicator3-1_0.4.92-7_amd64.deb "http://ftp.us.debian.org/debian/pool/main/liba/libappindicator/libappindicator3-1_0.4.92-7_amd64.deb" && \ |
| 72 | + dpkg -i /usr/src/libappindicator3-1_0.4.92-7_amd64.deb ; \ |
| 73 | + apt-get install -f -y && \ |
| 74 | + rm -f /usr/src/libappindicator3-1_0.4.92-7_amd64.deb |
| 75 | + |
| 76 | +# a few environment variables to make NPM installs easier |
| 77 | +# good colors for most applications |
| 78 | +ENV TERM=xterm |
| 79 | +# avoid million NPM install messages |
| 80 | +ENV npm_config_loglevel=warn |
| 81 | + |
| 82 | +RUN npm --version \ |
| 83 | + && npm install -g yarn@latest --force \ |
| 84 | + && yarn --version \ |
| 85 | + && node -p process.versions \ |
| 86 | + && node -p 'module.paths' \ |
| 87 | + && echo " node version: $(node -v) \n" \ |
| 88 | + "npm version: $(npm -v) \n" \ |
| 89 | + "yarn version: $(yarn -v) \n" \ |
| 90 | + "debian version: $(cat /etc/debian_version) \n" \ |
| 91 | + "user: $(whoami) \n" |
0 commit comments