FROM quay.io/centos/centos:stream9
ENV CI=true
RUN dnf update -y && \
dnf install -y \
ca-certificates \
sudo \
which && \
dnf clean all
RUN curl -fsSL https://rpm.nodesource.com/setup_22.x | bash - && \
dnf install -y nodejs
RUN npm install -g pnpm
RUN echo '[google-chrome]' > /etc/yum.repos.d/google-chrome.repo && \
echo 'name=google-chrome' >> /etc/yum.repos.d/google-chrome.repo && \
echo 'baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64' >> /etc/yum.repos.d/google-chrome.repo && \
echo 'enabled=1' >> /etc/yum.repos.d/google-chrome.repo && \
echo 'gpgcheck=1' >> /etc/yum.repos.d/google-chrome.repo && \
echo 'gpgkey=https://dl.google.com/linux/linux_signing_key.pub' >> /etc/yum.repos.d/google-chrome.repo && \
dnf install -y google-chrome-stable && \
dnf clean all
RUN dnf remove -y xorg-x11-server-Xvfb || true && \
dnf autoremove -y && \
rm -f /usr/bin/xvfb-run /usr/local/bin/xvfb-run && \
dnf clean all
RUN ! which xvfb-run || exit 1
RUN useradd -m -s /bin/bash testuser && \
echo 'testuser ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
WORKDIR /app
USER testuser
CMD ["bash"]