• Joined on 2024-09-22

peertube-collector-monolith (sha256:072db29339caa36fa7606342e7f964fb750de7efa68d38eb0b8e49e3534fe244)

Published 2025-03-30 18:09:12 +00:00 by kobim in kobim/peertube-collector

Installation

docker pull gitea.kobim.cloud/kobim/peertube-collector-monolith@sha256:072db29339caa36fa7606342e7f964fb750de7efa68d38eb0b8e49e3534fe244
sha256:072db29339caa36fa7606342e7f964fb750de7efa68d38eb0b8e49e3534fe244

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=24.04
ADD file:9d8a15341d364d2508ffca0657b4cb175a35d2edbdb0cf2476f7c4fff4f6c66a in /
CMD ["/bin/bash"]
ARG AUTHORS=SeleniumHQ
LABEL authors=SeleniumHQ <selenium-developers@googlegroups.com>
LABEL org.opencontainers.image.source=https://github.com/SeleniumHQ/docker-selenium
ARG VERSION=4.25.0
ARG RELEASE=selenium-4.25.0
ARG OPENTELEMETRY_VERSION=1.42.1
ARG GRPC_VERSION=1.66.0
ARG NETTY_VERSION=4.1.113.Final
ARG CS_VERSION=2.1.13
ARG SEL_USER=seluser
ARG SEL_GROUP=seluser
ARG HOME=/home/seluser
ARG UID=1200
ARG GID=1201
ARG TZ=UTC
ARG JRE_VERSION=17
ARG TARGETARCH=arm64
ARG TARGETVARIANT=
USER root
ENV DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true SEL_USER=seluser SEL_UID=1200 SEL_GID=1201 HOME=/home/seluser TZ=UTC SEL_DOWNLOAD_DIR=/home/seluser/Downloads
RUN |16 AUTHORS=SeleniumHQ VERSION=4.25.0 RELEASE=selenium-4.25.0 OPENTELEMETRY_VERSION=1.42.1 GRPC_VERSION=1.66.0 NETTY_VERSION=4.1.113.Final CS_VERSION=2.1.13 SEL_USER=seluser SEL_GROUP=seluser HOME=/home/seluser UID=1200 GID=1201 TZ=UTC JRE_VERSION=17 TARGETARCH=arm64 TARGETVARIANT= /bin/sh -c if [ "$(dpkg --print-architecture)" = "amd64" ]; then echo "deb http://archive.ubuntu.com/ubuntu noble main universe\n" > /etc/apt/sources.list && echo "deb http://archive.ubuntu.com/ubuntu noble-updates main universe\n" >> /etc/apt/sources.list && echo "deb http://security.ubuntu.com/ubuntu noble-security main universe\n" >> /etc/apt/sources.list ; fi && apt-get -qqy update && apt-get upgrade -yq && apt-get -qqy --no-install-recommends install acl bzip2 ca-certificates tzdata sudo unzip wget jq curl supervisor gnupg2 libnss3-tools openjdk-${JRE_VERSION}-jre-headless && if [ "${TARGETARCH}" = "arm" ] && [ "${TARGETVARIANT}" = "v7" ]; then export ARCH=armhf ; else export ARCH=$(dpkg --print-architecture) ; fi && sed -i 's/securerandom\.source=file:\/dev\/random/securerandom\.source=file:\/dev\/urandom/' /usr/lib/jvm/java-${JRE_VERSION}-openjdk-${ARCH}/conf/security/java.security && rm -rf /var/lib/apt/lists/* /var/cache/apt/* && ln -fs /usr/share/zoneinfo/${TZ} /etc/localtime && dpkg-reconfigure -f noninteractive tzdata && cat /etc/timezone && groupadd ${SEL_GROUP} --gid ${SEL_GID} && useradd ${SEL_USER} --create-home --gid ${SEL_GID} --shell /bin/bash --uid ${SEL_UID} && usermod -a -G sudo ${SEL_USER} && echo 'ALL ALL = (ALL) NOPASSWD: ALL' >> /etc/sudoers && echo "${SEL_USER}:$(cat /run/secrets/SEL_PASSWD)" | chpasswd && mkdir -p /opt/selenium /opt/selenium/assets /opt/selenium/secrets /var/run/supervisor /var/log/supervisor ${SEL_DOWNLOAD_DIR} ${HOME}/.mozilla ${HOME}/.vnc ${HOME}/.pki/nssdb && certutil -d sql:${HOME}/.pki/nssdb -N --empty-password && touch /opt/selenium/config.toml && chown -R ${SEL_USER}:${SEL_GROUP} /opt/selenium /var/run/supervisor /var/log/supervisor /etc/passwd ${HOME} && chmod -R 775 /opt/selenium /var/run/supervisor /var/log/supervisor /etc/passwd ${HOME} && wget --no-verbose https://github.com/${AUTHORS}/selenium/releases/download/${RELEASE}/selenium-server-${VERSION}.jar -O /opt/selenium/selenium-server.jar && chgrp -R 0 /opt/selenium ${HOME} /opt/selenium/assets /var/run/supervisor /var/log/supervisor && chmod -R g=u /opt/selenium ${HOME} /opt/selenium/assets /var/run/supervisor /var/log/supervisor && setfacl -Rm u:${SEL_USER}:rwx /opt /opt/selenium ${HOME} /opt/selenium/assets /var/run/supervisor /var/log/supervisor && setfacl -Rm g:${SEL_GROUP}:rwx /opt /opt/selenium ${HOME} /opt/selenium/assets /var/run/supervisor /var/log/supervisor && if [ `arch` = "aarch64" ] || [ `arch` = "x86_64" ]; then curl -fL https://github.com/coursier/coursier/releases/download/v${CS_VERSION}/coursier.jar > /tmp/cs && chmod +x /tmp/cs && mkdir -p /external_jars && chmod -R 775 /external_jars ; fi && if [ -f "/tmp/cs" ]; then java -jar /tmp/cs fetch --classpath --cache /external_jars io.opentelemetry:opentelemetry-exporter-otlp:${OPENTELEMETRY_VERSION} io.grpc:grpc-netty:${GRPC_VERSION} io.netty:netty-codec-http:${NETTY_VERSION} > /external_jars/.classpath.txt && chmod 664 /external_jars/.classpath.txt ; fi && rm -fr /root/.cache/* && echo 'if [[ $(ulimit -n) -gt 200000 ]]; then echo "WARNING: Very high value reported by \"ulimit -n\". Consider passing \"--ulimit nofile=32768\" to \"docker run\"."; fi' >> ${HOME}/.bashrc # buildkit
COPY --chown=1200:1201 check-grid.sh entry_point.sh configs/node/nodeGridUrl.sh configs/node/nodePreStop.sh /opt/bin/ # buildkit
COPY --chown=1200:1201 mask /usr/local/bin/ # buildkit
COPY supervisord.conf /etc # buildkit
ARG CERT_TRUST_ATTR=TCu,Cu,Tu
COPY --chown=1200:1201 certs/add-cert-helper.sh certs/add-jks-helper.sh /opt/bin/ # buildkit
COPY --chown=1200:1201 certs/tls.crt certs/tls.key certs/server.jks certs/server.pass /opt/selenium/secrets/ # buildkit
USER 1200:1201
RUN |17 AUTHORS=SeleniumHQ VERSION=4.25.0 RELEASE=selenium-4.25.0 OPENTELEMETRY_VERSION=1.42.1 GRPC_VERSION=1.66.0 NETTY_VERSION=4.1.113.Final CS_VERSION=2.1.13 SEL_USER=seluser SEL_GROUP=seluser HOME=/home/seluser UID=1200 GID=1201 TZ=UTC JRE_VERSION=17 TARGETARCH=arm64 TARGETVARIANT= CERT_TRUST_ATTR=TCu,Cu,Tu /bin/sh -c /opt/bin/add-jks-helper.sh -d /opt/selenium/secrets && /opt/bin/add-cert-helper.sh -d /opt/selenium/secrets ${CERT_TRUST_ATTR} # buildkit
ENV SE_BIND_HOST=false SE_SERVER_PROTOCOL=http SE_REJECT_UNSUPPORTED_CAPS=false SE_OTEL_JAVA_GLOBAL_AUTOCONFIGURE_ENABLED=true SE_OTEL_TRACES_EXPORTER=otlp SE_SUPERVISORD_LOG_LEVEL=info SE_SUPERVISORD_CHILD_LOG_DIR=/tmp SE_SUPERVISORD_LOG_FILE=/tmp/supervisord.log SE_SUPERVISORD_PID_FILE=/tmp/supervisord.pid SE_LOG_LEVEL=INFO SE_HTTP_LOGS=false SE_STRUCTURED_LOGS=false SE_ENABLE_TRACING=true SE_ENABLE_TLS=false SE_JAVA_SSL_TRUST_STORE=/opt/selenium/secrets/server.jks SE_JAVA_SSL_TRUST_STORE_PASSWORD=/opt/selenium/secrets/server.pass SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=true SE_HTTPS_CERTIFICATE=/opt/selenium/secrets/tls.crt SE_HTTPS_PRIVATE_KEY=/opt/selenium/secrets/tls.key
CMD ["/opt/bin/entry_point.sh"]
ARG AUTHORS=SeleniumHQ
LABEL authors=SeleniumHQ
ARG NOVNC_SOURCE=heads
ARG NOVNC_VERSION=master
ARG WEBSOCKIFY_SOURCE=heads
ARG WEBSOCKIFY_VERSION=master
ARG LANG_WHICH=en
ARG LANG_WHERE=US
ARG ENCODING=UTF-8
ARG LANGUAGE=en_US.UTF-8
USER root
ENV LANG_WHICH=en LANG_WHERE=US ENCODING=UTF-8 LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 SE_ENABLE_BROWSER_LEFTOVERS_CLEANUP=false SE_BROWSER_LEFTOVERS_INTERVAL_SECS=3600 SE_BROWSER_LEFTOVERS_PROCESSES_SECS=7200 SE_BROWSER_LEFTOVERS_TEMPFILES_DAYS=1 SE_DRAIN_AFTER_SESSION_COUNT=0 SE_NODE_MAX_SESSIONS=1 SE_NODE_SESSION_TIMEOUT=300 SE_NODE_OVERRIDE_MAX_SESSIONS=false SE_NODE_HEARTBEAT_PERIOD=30 SE_OTEL_SERVICE_NAME=selenium-node SE_OFFLINE=true SE_SCREEN_WIDTH=1920 SE_SCREEN_HEIGHT=1080 SE_SCREEN_DEPTH=24 SE_SCREEN_DPI=96 SE_START_XVFB=true SE_START_VNC=true SE_START_NO_VNC=true SE_NO_VNC_PORT=7900 SE_VNC_PORT=5900 DISPLAY=:99.0 DISPLAY_NUM=99 CONFIG_FILE=/opt/selenium/config.toml GENERATE_CONFIG=true DBUS_SESSION_BUS_ADDRESS=/dev/null
RUN |9 AUTHORS=SeleniumHQ NOVNC_SOURCE=heads NOVNC_VERSION=master WEBSOCKIFY_SOURCE=heads WEBSOCKIFY_VERSION=master LANG_WHICH=en LANG_WHERE=US ENCODING=UTF-8 LANGUAGE=en_US.UTF-8 /bin/sh -c apt-get update -qqy && apt-get -qqy --no-install-recommends install xvfb libxcb1 xauth pulseaudio x11vnc x11-utils fluxbox eterm hsetroot feh language-pack-en locales libfontconfig libfreetype6 xfonts-scalable xfonts-cyrillic fonts-ubuntu fonts-liberation fonts-ipafont-gothic fonts-wqy-zenhei fonts-tlwg-loma-otf fonts-noto-color-emoji && locale-gen ${LANGUAGE} && dpkg-reconfigure --frontend noninteractive locales && apt-get -qyy autoremove && rm -rf /var/lib/apt/lists/* && apt-get -qyy clean && wget -nv -O noVNC.zip "https://github.com/novnc/noVNC/archive/refs/${NOVNC_SOURCE}/${NOVNC_VERSION}.zip" && unzip -x noVNC.zip && mv noVNC-${NOVNC_VERSION} /opt/bin/noVNC && cp /opt/bin/noVNC/vnc.html /opt/bin/noVNC/index.html && rm noVNC.zip && wget -nv -O websockify.zip "https://github.com/novnc/websockify/archive/refs/${WEBSOCKIFY_SOURCE}/${WEBSOCKIFY_VERSION}.zip" && unzip -x websockify.zip && rm websockify.zip && mv websockify-${WEBSOCKIFY_VERSION} /opt/bin/noVNC/utils/websockify && chmod +x /opt/bin/noVNC/utils/websockify/run && rm -rf /opt/bin/noVNC/utils/websockify/docker /opt/bin/noVNC/utils/websockify/tests && chmod +x /dev/shm && mkdir -p /tmp/.X11-unix && x11vnc -storepasswd $(cat /run/secrets/SEL_PASSWD) ${HOME}/.vnc/passwd && chown -R "${SEL_USER}:${SEL_GROUP}" ${HOME}/.vnc && chmod -R 775 ${HOME} /tmp/.X11-unix && chgrp -R 0 ${HOME} /tmp/.X11-unix && chmod -R g=u ${HOME} /tmp/.X11-unix # buildkit
COPY --chown=1200:1201 start-selenium-node.sh start-xvfb.sh start-vnc.sh start-novnc.sh generate_config generate_relay_config /opt/bin/ # buildkit
COPY selenium_grid_logo.png /usr/share/images/fluxbox/ubuntu-light.png # buildkit
COPY selenium.conf /etc/supervisor/conf.d/ # buildkit
USER 1200
EXPOSE map[5900/tcp:{}]
ARG AUTHORS=SeleniumHQ
LABEL authors=SeleniumHQ
USER root
ARG CHROMIUM_VERSION=latest
ARG CHROMIUM_DEB_SITE=http://deb.debian.org/debian
RUN |3 AUTHORS=SeleniumHQ CHROMIUM_VERSION=latest CHROMIUM_DEB_SITE=http://deb.debian.org/debian /bin/sh -c echo "deb ${CHROMIUM_DEB_SITE}/ sid main" >> /etc/apt/sources.list && wget -qO- https://ftp-master.debian.org/keys/archive-key-12.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/debian-archive-keyring.gpg && wget -qO- https://ftp-master.debian.org/keys/archive-key-12-security.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/debian-archive-security-keyring.gpg && apt-get update -qqy && if [ "${CHROMIUM_VERSION}" = "latest" ]; then apt-get -qqy --no-install-recommends install chromium-common chromium chromium-l10n chromium-driver; else mkdir -p /tmp/chromium && wget -q ${CHROMIUM_DEB_SITE}/pool/main/c/chromium/chromium-common_${CHROMIUM_VERSION}-1_$(dpkg --print-architecture).deb -O /tmp/chromium/chromium-common.deb && wget -q ${CHROMIUM_DEB_SITE}/pool/main/c/chromium/chromium_${CHROMIUM_VERSION}-1_$(dpkg --print-architecture).deb -O /tmp/chromium/chromium.deb && wget -q ${CHROMIUM_DEB_SITE}/pool/main/c/chromium/chromium-l10n_${CHROMIUM_VERSION}-1_all.deb -O /tmp/chromium/chromium-l10n.deb && wget -q ${CHROMIUM_DEB_SITE}/pool/main/c/chromium/chromium-driver_${CHROMIUM_VERSION}-1_$(dpkg --print-architecture).deb -O /tmp/chromium/chromium-driver.deb && apt-get -qqyf install /tmp/chromium/chromium-common.deb /tmp/chromium/chromium.deb /tmp/chromium/chromium-l10n.deb /tmp/chromium/chromium-driver.deb && rm -rf /tmp/chromium; fi && rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit
COPY wrap_chromium_binary /opt/bin/wrap_chromium_binary # buildkit
RUN |3 AUTHORS=SeleniumHQ CHROMIUM_VERSION=latest CHROMIUM_DEB_SITE=http://deb.debian.org/debian /bin/sh -c /opt/bin/wrap_chromium_binary # buildkit
COPY chrome-cleanup.sh /opt/bin/chrome-cleanup.sh # buildkit
COPY chrome-cleanup.conf /etc/supervisor/conf.d/chrome-cleanup.conf # buildkit
USER 1200
RUN |3 AUTHORS=SeleniumHQ CHROMIUM_VERSION=latest CHROMIUM_DEB_SITE=http://deb.debian.org/debian /bin/sh -c echo "chrome" > /opt/selenium/browser_name # buildkit
RUN |3 AUTHORS=SeleniumHQ CHROMIUM_VERSION=latest CHROMIUM_DEB_SITE=http://deb.debian.org/debian /bin/sh -c chromium --version | awk '{print $2}' > /opt/selenium/browser_version # buildkit
RUN |3 AUTHORS=SeleniumHQ CHROMIUM_VERSION=latest CHROMIUM_DEB_SITE=http://deb.debian.org/debian /bin/sh -c echo "\"goog:chromeOptions\": {\"binary\": \"/usr/bin/chromium\"}" > /opt/selenium/browser_binary_location # buildkit
ENV SE_OTEL_SERVICE_NAME=selenium-node-chromium
ARG AUTHORS=SeleniumHQ
LABEL authors=SeleniumHQ
USER 1200
COPY --chown=1200:1201 start-selenium-standalone.sh /opt/bin/start-selenium-standalone.sh # buildkit
COPY selenium.conf /etc/supervisor/conf.d/ # buildkit
COPY --chown=1200:1201 generate_config /opt/bin/generate_config # buildkit
ENV SE_SESSION_REQUEST_TIMEOUT=300 SE_SESSION_RETRY_INTERVAL=15 SE_HEALTHCHECK_INTERVAL=120 SE_RELAX_CHECKS=true SE_REJECT_UNSUPPORTED_CAPS=true SE_OTEL_SERVICE_NAME=selenium-standalone
EXPOSE map[4444/tcp:{}]
RUN /bin/sh -c sudo apt-get update && sudo sudo apt-get install -y python3-venv # buildkit
WORKDIR /tmp
RUN /bin/sh -c wget -q https://repos.influxdata.com/influxdata-archive_compat.key && echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null && echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list && sudo apt-get update && sudo apt-get install -y telegraf # buildkit
RUN /bin/sh -c python3 -m venv ./venv # buildkit
ENV PATH=/tmp/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
COPY requirements.txt ./requirements.txt # buildkit
RUN /bin/sh -c ./venv/bin/pip install -r ./requirements.txt # buildkit
COPY main.py . # buildkit
COPY utils/ ./utils # buildkit
COPY telegraf.conf ./telegraf.conf # buildkit
COPY webrtc-internals-exporter /tmp/webrtc-internals-exporter # buildkit
COPY /tmp/webrtc-internals-exporter/background.bundle.js /tmp/webrtc-internals-exporter/background.bundle.js # buildkit
COPY --chown=1200:1201 monolith-entrypoint.sh /opt/bin/collector.sh # buildkit
RUN /bin/sh -c chmod +x /opt/bin/collector.sh # buildkit
ENTRYPOINT ["/opt/bin/collector.sh"]
HEALTHCHECK &{["CMD-SHELL" "curl -f http://localhost:9092/heartbeat || exit 1"] "5s" "10s" "5s" "0s" '\x05'}

Labels

Key Value
authors SeleniumHQ
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.source https://github.com/SeleniumHQ/docker-selenium
org.opencontainers.image.version 24.04
Details
Container
2025-03-30 18:09:12 +00:00
0
OCI / Docker
linux/arm64
794 MiB
Versions (1) View all
latest 2025-03-30