Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions base-internal/releases/node-22/22.19.0-trixie/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# build it with command
# docker build -t cypress/base-internal:22.19.0-trixie --platform linux/amd64 .
#
FROM node:22.19.0-trixie-slim

RUN apt-get update && \
apt-get install --no-install-recommends -y \
libgtk-3-0t64 \
libnotify-dev \
libgbm-dev \
libnss3 \
libxss1 \
libasound2t64 \
libxtst6 \
procps \
xauth \
xvfb \
build-essential \
# 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 \
xfonts-wqy \
# clean up
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

USER root

RUN node --version


# Install dependencies
RUN apt-get update && \
apt-get install -y \
fonts-liberation \
git \
libcurl4 \
libcurl3-gnutls \
libvulkan1 \
xdg-utils \
wget \
# needed for circle orb browsers to install firefox
gpg \
# needed for circle orb browsers to install chromedriver
jq \
curl \
# chrome dependencies
libu2f-udev \
# firefox dependencies
bzip2 \
# add codecs needed for video playback in firefox
# https://github.com/cypress-io/cypress-docker-images/issues/150
mplayer \
\
# clean up
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean

# install libappindicator3-1 - not included with Debian 13
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" && \
dpkg -i /usr/src/libappindicator3-1_0.4.92-7_amd64.deb ; \
apt-get install -f -y && \
rm -f /usr/src/libappindicator3-1_0.4.92-7_amd64.deb

# 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

RUN npm --version \
&& npm install -g yarn@latest --force \
&& yarn --version \
&& node -p process.versions \
&& node -p 'module.paths' \
&& echo " node version: $(node -v) \n" \
"npm version: $(npm -v) \n" \
"yarn version: $(yarn -v) \n" \
"debian version: $(cat /etc/debian_version) \n" \
"user: $(whoami) \n"
14 changes: 14 additions & 0 deletions base-internal/releases/node-22/22.19.0-trixie/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# cypress/base-internal:22.19.0-trixie

A Docker image with all dependencies pre-installed based on Debian Trixie.

NOTE: This image is intended for internal use with https://github.com/cypress-io/cypress. It contains a few differences from the factory, such as:

#### Dependency Additions

- xauth (to run xvfb inside system-tests)
- build-essential to install `make` and other linux build packages

#### Env variables

- Does not contain the `CACHE_FOLDER` and `FACTORY_DEFAULT_NODE_VERSION` env variables to keep unit tests non environment specific
9 changes: 9 additions & 0 deletions base-internal/releases/node-22/22.19.0-trixie/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

set -e+x

# build image with Cypress dependencies
LOCAL_NAME=cypress/base-internal:22.19.0-trixie

echo "Building $LOCAL_NAME"
docker build -t $LOCAL_NAME . --platform linux/amd64
9 changes: 3 additions & 6 deletions base-internal/releases/node-22/22.19.0-yarn-berry/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,16 @@
# build it with command
# docker build -t cypress/base-internal:22.19.0-yarn-berry --platform linux/amd64 .
#
FROM node:22.19.0-bookworm-slim
FROM node:22.19.0-trixie-slim

RUN apt-get update && \
apt-get install --no-install-recommends -y \
libgtk2.0-0 \
libgtk-3-0 \
libgtk-3-0t64 \
libnotify-dev \
libgconf-2-4 \
libgbm-dev \
libnss3 \
libxss1 \
libasound2 \
libasound2t64 \
libxtst6 \
procps \
xauth \
Expand All @@ -35,7 +33,6 @@ RUN apt-get update && \
fonts-arphic-ukai \
fonts-arphic-uming \
ttf-wqy-zenhei \
ttf-wqy-microhei \
xfonts-wqy \
# clean up
&& rm -rf /var/lib/apt/lists/* \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# cypress/base-internal:22.19.0-yarn-berry

A Docker image with all dependencies pre-installed based on Debian Bookworm with Yarn Berry (v4.3.1).
A Docker image with all dependencies pre-installed based on Debian Trixie with Yarn Berry (v4.3.1).

NOTE: This image is intended for internal use with https://github.com/cypress-io/cypress. It contains a few differences from the factory, such as:

Expand Down