# inspired by https://github.com/cypress-io/cypress-docker-images and extended to support java 17, bullseye FROM node:14-bullseye RUN apt-get update && \ apt-get install --no-install-recommends -y \ libgtk2.0-0 \ libgtk-3-0 \ libnotify-dev \ libgconf-2-4 \ libgbm-dev \ libnss3 \ libxss1 \ libasound2 \ libxtst6 \ xauth \ xvfb \ # install text editors vim-tiny \ nano \ # install emoji font fonts-noto-color-emoji \ # install Chinese fonts # this list was copied from https://github.com/jim3ma/docker-leanote fonts-arphic-bkai00mp \ fonts-arphic-bsmi00lp \ fonts-arphic-gbsn00lp \ fonts-arphic-gkai00mp \ fonts-arphic-ukai \ fonts-arphic-uming \ ttf-wqy-zenhei \ ttf-wqy-microhei \ xfonts-wqy \ openjdk-17-jdk \ maven \ # clean up && rm -rf /var/lib/apt/lists/* \ && apt-get clean RUN npm --version RUN npm install -g yarn@latest --force RUN yarn --version # a few environment variables to make NPM installs easier # good colors for most applications ENV TERM xterm # avoid million NPM install messages ENV npm_config_loglevel warn # allow installing when the main user is root ENV npm_config_unsafe_perm true # Node libraries RUN node -p process.versions # Show where Node loads required modules from RUN node -p 'module.paths' # versions of local tools RUN echo " node version: $(node -v) \n" \ "npm version: $(npm -v) \n" \ "yarn version: $(yarn -v) \n" \ "java version: $(java --version) \n" \ "maven version: $(mvn --version) \n" \ "debian version: $(cat /etc/debian_version) \n" \ "user: $(whoami) \n"