Docker Community Forums

Share and learn in the Docker community.

Some challenges with docker, systemd, expect and xterm

Hi @all,

I try to build a docker container with a software called Igel Universal Management Suite.
It’s there to Manage Thin Clients in a VDI Environment.
First of all I’m not the best in Linux and I’m pretty new to docker so have been patient with me please.

What I wanna do:
Create a Dockerfile which is there to build a image that is staring a ubuntu and installing the application.bin which is downloaded before with wget. I tried to use a expect script to make the installation unattended but I failed. There is a smart guy fordboy0/igelums6-installed out there how make such a container but there are two problems.

  1. I don’t know how to contact him
  2. His image is not up to date

What I could reverse Engineer so fare:

FROM ubuntu:18.04
RUN /bin/sh -c set -xe          \
&& echo '#!/bin/sh' > /usr/sbin/policy-rc.d         \
&& echo 'exit 101' >> /usr/sbin/policy-rc.d         \
&& chmod +x /usr/sbin/policy-rc.d           \
&& dpkg-divert --local --rename --add /sbin/initctl         \
&& cp -a /usr/sbin/policy-rc.d /sbin/initctl        \
&& sed -i 's/^exit.*/exit 0/' /sbin/initctl                 \
&& echo 'force-unsafe-io' > /etc/dpkg/dpkg.cfg.d/docker-apt-speedup                 \
&& echo 'DPkg::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };' > /etc/apt/apt.conf.d/docker-clean       \
&& echo 'APT::Update::Post-Invoke { "rm -f /var/cache/apt/archives/*.deb /var/cache/apt/archives/partial/*.deb /var/cache/apt/*.bin || true"; };' >> /etc/apt/apt.conf.d/docker-clean       \
&& echo 'Dir::Cache::pkgcache ""; Dir::Cache::srcpkgcache "";' >> /etc/apt/apt.conf.d/docker-clean          \
&& echo 'Acquire::Languages "none";' > /etc/apt/apt.conf.d/docker-no-languages              \
&& echo 'Acquire::GzipIndexes "true"; Acquire::CompressionTypes::Order:: "gz";' > /etc/apt/apt.conf.d/docker-gzip-indexes           \
&& echo 'Apt::AutoRemove::SuggestsImportant "false";' > /etc/apt/apt.conf.d/docker-autoremove-suggests
RUN rm -rf /var/lib/apt/lists/*
RUN mkdir -p /run/systemd \
&& echo 'docker' > /run/systemd/container
CMD ["/bin/bash"]
RUN apt-get update \
&& apt-get -y upgrade
RUN apt-get -y install apt-utils dialog
RUN apt-get -y install icedtea-8-plugin xserver-xorg vim wget libqt5core5a openssh-server diffutils
RUN apt-get -y install patch sudo xterm systemd
RUN wget http://fwu.igel.com/files/IGEL_UNIVERSAL_MANAGEMENT_SUITE/LINUX/setup-igel-ums-linux_6.06.100.bin -O /root/setup-igel-ums-linux.bin
COPY ./UMS/run-ums.sh /
COPY ./UMS/sshd_config.patch /root
EXPOSE 22 8443 9080 30001 30002
RUN useradd -m -s/bin/bash -G staff,users,sudo Igel
RUN /bin/echo -e "Igel2020\nIgel2020" | passwd Igel
ENTRYPOINT ["/run-ums.sh"]
  • Container is starting
  • application is downloaded
  • expect which was create with autoexpect doesn’t work
  • manual installation failed because there is no systemd

PLEASE HELP ME!!!

Best regards,
Malli

That are the comments anyone likes to see.
Instead of telling what information you need.

Nice job