containers

neko (0078ed2c78-amd64)

Published 2025-09-27 20:58:36 +04:00 by Vladimir Hodakov in containers/neko

Installation

docker pull source.hodakov.me/containers/neko:0078ed2c78-amd64
sha256:c96cfe7b6dcf3348400b88bd6f312cbc9f7dce266e7490c48cf992ed07f40e94

About this package

A self hosted virtual browser that runs in docker and uses WebRTC.

Image Layers

# debian.sh --arch 'amd64' out/ 'bullseye' '@1757289600'
ARG USERNAME=neko
ARG USER_UID=1000
ARG USER_GID=1000
ENV DEBIAN_FRONTEND=noninteractive
RUN |3 USERNAME=neko USER_UID=1000 USER_GID=1000 /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends wget ca-certificates python2 supervisor pulseaudio dbus-x11 xserver-xorg-video-dummy libcairo2 libxcb1 libxrandr2 libxv1 libopus0 libvpx6 zip curl xdotool xclip libgtk-3-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio gstreamer1.0-omx; ARCH=$(dpkg --print-architecture); wget http://ftp.de.debian.org/debian/pool/main/libx/libxcvt/libxcvt0_0.1.2-1_${ARCH}.deb; apt-get install --no-install-recommends ./libxcvt0_0.1.2-1_${ARCH}.deb; rm ./libxcvt0_0.1.2-1_${ARCH}.deb; groupadd --gid $USER_GID $USERNAME; useradd --uid $USER_UID --gid $USERNAME --shell /bin/bash --create-home $USERNAME; adduser $USERNAME audio; adduser $USERNAME video; adduser $USERNAME pulse; mkdir /tmp/.X11-unix; chmod 1777 /tmp/.X11-unix; chown $USERNAME /tmp/.X11-unix/; mkdir -p /etc/neko /var/www /var/log/neko /tmp/runtime-$USERNAME /home/$USERNAME/.config/pulse /home/$USERNAME/.local/share/xorg; chmod 1777 /var/log/neko; chown $USERNAME /var/log/neko/ /tmp/runtime-$USERNAME; chown -R $USERNAME:$USERNAME /home/$USERNAME; apt-get install -y --no-install-recommends fonts-noto-color-emoji fonts-arphic-ukai fonts-arphic-uming fonts-wqy-zenhei xfonts-intl-chinese xfonts-wqy fonts-ipafont-mincho fonts-ipafont-gothic fonts-takao-mincho fonts-unfonts-core fonts-wqy-microhei fonts-indic; apt-get clean -y; rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit
COPY --chown=neko:neko runtime/.Xresources /home/neko/.Xresources # buildkit
COPY runtime/dbus /usr/bin/dbus # buildkit
COPY runtime/default.pa /etc/pulse/default.pa # buildkit
COPY runtime/supervisord.conf /etc/neko/supervisord.conf # buildkit
COPY runtime/supervisord.dbus.conf /etc/neko/supervisord.dbus.conf # buildkit
COPY runtime/xorg.conf /etc/neko/xorg.conf # buildkit
COPY --chown=neko:neko runtime/icon-theme /home/neko/.icons/default # buildkit
COPY runtime/fontconfig/* /etc/fonts/conf.d/ # buildkit
COPY runtime/fonts /usr/local/share/fonts # buildkit
ENV USER=neko
ENV DISPLAY=:99.0
ENV PULSE_SERVER=unix:/tmp/pulseaudio.socket
ENV XDG_RUNTIME_DIR=/tmp/runtime-neko
ENV NEKO_SERVER_BIND=:8080
ENV NEKO_PLUGINS_ENABLED=true
ENV NEKO_PLUGINS_DIR=/etc/neko/plugins/
HEALTHCHECK &{["CMD-SHELL" "wget -O - http://localhost:${NEKO_SERVER_BIND#*:}/health || wget --no-check-certificate -O - https://localhost:${NEKO_SERVER_BIND#*:}/health || exit 1"] "10s" "5s" "0s" "0s" '\b'}
CMD ["/usr/bin/supervisord" "-c" "/etc/neko/supervisord.conf"]
LABEL net.m1k1o.neko.api-version=3
COPY /src/bin/plugins/ /etc/neko/plugins/ # buildkit
COPY /src/bin/neko /usr/bin/neko # buildkit
COPY client/dist /var/www # buildkit
COPY /usr/local/lib/xorg/modules/drivers/dummy_drv.so /usr/lib/xorg/modules/drivers/dummy_drv.so # buildkit
COPY /usr/local/lib/xorg/modules/input/neko_drv.so /usr/lib/xorg/modules/input/neko_drv.so # buildkit
COPY config.yml /etc/neko/neko.yaml # buildkit
COPY sources.list /etc/apt/sources.list # buildkit
ENV DEBIAN_FRONTEND=noninteractive
RUN /bin/sh -c set -eux; apt-get update; apt-get -y upgrade; # buildkit
RUN /bin/sh -c set -eux; apt-get install -y --no-install-recommends -o Dpkg::Options::="--force-confold" xfce4 xfce4-terminal sudo vim curl pavucontrol # buildkit
RUN /bin/sh -c set -eux; curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg; echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg] https://brave-browser-apt-release.s3.brave.com/ stable main" | tee /etc/apt/sources.list.d/brave-browser-release.list; apt update; apt install -y brave-browser # buildkit
RUN /bin/sh -c set -eux; apt-get install -y transmission-gtk vlc # buildkit
RUN /bin/sh -c set -eux; apt-get install -y gstreamer1.0-plugins-good gstreamer1.0-plugins-bad # buildkit
RUN /bin/sh -c set -eux; usermod -aG sudo neko; echo "neko:neko" | chpasswd; echo "%sudo ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers # buildkit
RUN /bin/sh -c set -eux; apt-get clean -y; rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit
COPY supervisord.conf /etc/neko/supervisord/xfce.conf # buildkit
COPY brave-browser.desktop /usr/share/applications/ # buildkit
VOLUME [/home/neko]

Labels

Key Value
net.m1k1o.neko.api-version 3
org.opencontainers.image.created 2025-09-14T16:03:28.596Z
org.opencontainers.image.description A self hosted virtual browser that runs in docker and uses WebRTC.
org.opencontainers.image.licenses Apache-2.0
org.opencontainers.image.revision 14777501ee234cbcd18649d9d94dc0fbf0943369
org.opencontainers.image.source https://github.com/m1k1o/neko
org.opencontainers.image.title neko
org.opencontainers.image.url https://github.com/m1k1o/neko
org.opencontainers.image.version 3.0.8
Details
Container
2025-09-27 20:58:36 +04:00
3
OCI / Docker
linux/amd64
Apache-2.0
863 MiB
Versions (15) View all
latest 2025-09-27
21810d7fe3-arm64 2025-09-27
21810d7fe3-amd64 2025-09-27
0078ed2c78-arm64 2025-09-27
0078ed2c78-amd64 2025-09-27