docker-qemu-reactos/Dockerfile

57 lines
1.4 KiB
Docker
Raw Normal View History

2019-05-05 15:17:40 +00:00
FROM debian:sid
2019-02-20 22:10:38 +00:00
# Environment
ENV QEMU_CPU=2
ENV QEMU_RAM=1024M
ENV QEMU_DISK_SIZE=16G
ENV QEMU_DISK_FORMAT=qcow2
ENV QEMU_KEYBOARD=en-us
2019-03-07 20:50:38 +00:00
ENV QEMU_NET_DEVICE=rtl8139
ENV QEMU_NET_OPTIONS=hostfwd=tcp::13389-:3389,hostfwd=tcp::15900-:5900
ENV QEMU_BOOT_ORDER=cd
ENV QEMU_BOOT_MENU=off
2019-02-20 22:10:38 +00:00
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 \
2019-05-05 15:17:40 +00:00
procps \
2019-02-20 22:10:38 +00:00
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
2019-03-04 18:48:14 +00:00
ARG REACTOS_ISO_URL=https://downloads.sourceforge.net/project/reactos/ReactOS/0.4.11/ReactOS-0.4.11-iso.zip
ARG REACTOS_ISO_CHECKSUM=68120b3481c99c6b0563d5f3ec469ab197f2c8abc38d29adba4c40d01acd92c8
2019-02-20 22:10:38 +00:00
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/
2019-03-07 20:50:38 +00:00
# Expose ports
## VNC
EXPOSE 5900/tcp
## noVNC
2019-02-20 22:10:38 +00:00
EXPOSE 6080/tcp
CMD ["/usr/local/bin/docker-foreground-cmd"]