Files
XC_VM/tools/test-install/Dockerfile
T
Divarion-D 17b6842562 chore: add Docker test container for release verification
- Dockerfile: Ubuntu 22.04 + systemd for testing installer end-to-end
- docker-compose.yml: build config for image
- test_release.sh: orchestration script (build/run/install/clean/logs)
- auto_install.sh: feeds answers to interactive installer prompts
- README.md: usage documentation

Container runs privileged with --cgroupns=host for systemd support.
Mounts dist/XC_VM.zip read-only, runs full install + post-verification.
2026-03-15 16:07:55 +03:00

36 lines
1.4 KiB
Docker

FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
ENV container=docker
ENV LC_ALL=C
ENV TZ=UTC
# systemd — необходим для инсталлятора (systemctl enable/start xc_vm)
RUN apt-get update && apt-get install -y --no-install-recommends \
systemd systemd-sysv dbus \
lsb-release sudo python3 python3-pip wget curl unzip \
iproute2 net-tools apt-utils ca-certificates gnupg \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Убираем только действительно ненужные в контейнере юниты
# НЕ трогаем sysinit.target.wants (journald, tmpfiles, sysctl — нужны)
RUN rm -f /lib/systemd/system/multi-user.target.wants/* \
/lib/systemd/system/local-fs.target.wants/* \
/lib/systemd/system/sockets.target.wants/*udev* \
/lib/systemd/system/sockets.target.wants/*initctl* \
/lib/systemd/system/anaconda.target.wants/* \
/lib/systemd/system/plymouth* \
/lib/systemd/system/systemd-update-utmp*
STOPSIGNAL SIGRTMIN+3
WORKDIR /opt/xcvm-install
# Скрипт автоматической установки (подаёт ответы на интерактивные вопросы)
COPY auto_install.sh /opt/xcvm-install/auto_install.sh
RUN chmod +x /opt/xcvm-install/auto_install.sh
# Точка входа — systemd (PID 1), установка запускается вручную или через скрипт
CMD ["/sbin/init"]