Spaces:
Build error
Build error
File size: 2,381 Bytes
953a430 b8fb4e0 ee79a67 b8fb4e0 ee79a67 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 953a430 b8fb4e0 ee79a67 b8fb4e0 ee79a67 953a430 b8fb4e0 be7ef2c 953a430 ee79a67 953a430 b8fb4e0 ee79a67 953a430 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | # Используем свежий Ubuntu (на март 2026 — 24.04 LTS)
FROM ubuntu:24.04
# Отключаем интерактивные вопросы при установке
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Europe/Moscow
# ─── Установка базовой системы + XFCE + VNC/noVNC ───────────────────────────────
RUN apt-get update -qq && \
apt-get install -y --no-install-recommends \
# Десктоп и утилиты
xfce4 xfce4-goodies xfce4-terminal \
dbus-x11 \
# VNC сервер + noVNC (браузерный доступ)
tigervnc-standalone-server tigervnc-common \
novnc websockify \
# Браузер, файловый менеджер, базовые программы
firefox firefox-locale-ru \
mousepad ristretto \
# Шрифты, темы, звук (опционально)
fonts-dejavu fonts-noto fonts-noto-cjk \
pulseaudio \
# Утилиты
sudo supervisor wget curl nano htop \
# Чистка
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Создаём пользователя (лучше не root)
RUN useradd -m -s /bin/bash user && \
echo "user:user" | chpasswd && \
adduser user sudo && \
echo "user ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/user
USER user
WORKDIR /home/user
# Настраиваем VNC пароль (можно менять)
RUN mkdir -p \~/.vnc && \
echo "123456" | vncpasswd -f > \~/.vnc/passwd && \
chmod 600 \~/.vnc/passwd
# ─── Конфиг supervisord (запускает всё разом) ────────────────────────────────
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
# ─── Порты ────────────────────────────────────────────────────────────────────
# 6080 → noVNC (браузер)
# 5901 → обычный VNC (если понадобится)
EXPOSE 6080 5901
# Запускаем supervisor → он поднимет VNC + noVNC
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"] |