mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-18 15:55:59 +01:00
43 lines
1.5 KiB
Docker
43 lines
1.5 KiB
Docker
ARG MIRROR
|
|
ARG BASE_IMAGE=debian:10
|
|
FROM ${MIRROR}${BASE_IMAGE}
|
|
|
|
# Update to archive repos since Debian 10 is EOL
|
|
RUN sed -i 's|http://deb.debian.org|http://archive.debian.org|g' /etc/apt/sources.list && \
|
|
sed -i 's|http://security.debian.org|http://archive.debian.org|g' /etc/apt/sources.list && \
|
|
sed -i '/buster-updates/d' /etc/apt/sources.list && \
|
|
echo "deb http://archive.debian.org/debian bullseye main" >> /etc/apt/sources.list
|
|
|
|
# Utilities
|
|
RUN apt-get update && \
|
|
apt-get install -y curl
|
|
|
|
# Upgrade libstdc++6 from bullseye (required by Node.js 22)
|
|
RUN apt-get install -y -t bullseye libstdc++6
|
|
|
|
# Node.js (arm32/arm64 use official builds, others use NodeSource)
|
|
ARG TARGETARCH
|
|
RUN if [ "$TARGETARCH" = "arm" ]; then \
|
|
apt-get install -y libatomic1 && \
|
|
curl -fsSL https://nodejs.org/dist/v20.18.3/node-v20.18.3-linux-armv7l.tar.gz | tar -xz -C /usr/local --strip-components=1; \
|
|
elif [ "$TARGETARCH" = "arm64" ]; then \
|
|
curl -fsSL https://nodejs.org/dist/v22.21.1/node-v22.21.1-linux-arm64.tar.gz | tar -xz -C /usr/local --strip-components=1; \
|
|
else \
|
|
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
|
|
apt-get install -y nodejs; \
|
|
fi
|
|
|
|
# Chromium
|
|
RUN apt-get install -y chromium
|
|
ENV PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/chromium
|
|
|
|
# Desktop Bus
|
|
RUN apt-get install -y dbus-x11 && \
|
|
mkdir -p /run/dbus
|
|
|
|
# X11 Server
|
|
RUN apt-get install -y xvfb
|
|
|
|
# Install newer libxkbfile1 from Debian 11 since Debian 10 version is too old
|
|
RUN apt-get install -y -t bullseye libxkbfile1
|