FROM ubuntu:18.04 # Environment ENV QEMU_CPU=2 ENV QEMU_RAM=1024M ENV QEMU_DISK_SIZE=16G ENV QEMU_DISK_FORMAT=qcow2 ENV QEMU_KEYBOARD=en-us ENV QEMU_KVM=false # Install system packages RUN export DEBIAN_FRONTEND=noninteractive \ && apt-get update \ && apt-get install -y --no-install-recommends \ ca-certificates \ curl \ net-tools \ novnc \ qemu-kvm \ qemu-system-x86 \ qemu-utils \ runit \ unzip \ && rm -rf /var/lib/apt/lists/* # Create data directories RUN mkdir -p /var/lib/qemu/images/ /var/lib/qemu/iso/ # Download ReactOS ISO ARG REACTOS_ISO_URL=https://github.com/reactos/reactos/releases/download/0.4.10-release/ReactOS-0.4.10-iso.zip ARG REACTOS_ISO_CHECKSUM=6e7b80a8d89adf1ed73a4733227d1ecf368bb237fafc322b9fb319a737dcd061 RUN mkdir /tmp/reactos/ \ && curl -Lo /tmp/reactos/reactos.zip "${REACTOS_ISO_URL}" \ && echo "${REACTOS_ISO_CHECKSUM} /tmp/reactos/reactos.zip" | sha256sum -c \ && unzip /tmp/reactos/reactos.zip -d /tmp/reactos/ \ && mv /tmp/reactos/*.iso /var/lib/qemu/iso/reactos.iso \ && rm -rf /tmp/reactos/ # Copy services COPY --chown=root:root scripts/service/ /etc/service/ # Copy scripts COPY --chown=root:root scripts/bin/ /usr/local/bin/ # Expose noVNC port EXPOSE 6080/tcp CMD ["/usr/local/bin/docker-foreground-cmd"]