--- a/codesys-ide/Dockerfile +++ b/codesys-ide/Dockerfile @@ -1,3 +1,7 @@ +# +# Stage 1: +# Install CODESYS in debian stretch with wine-development version +# FROM debian:stretch RUN dpkg --add-architecture i386 @@ -18,7 +22,44 @@ USER wineuser WORKDIR "/home/wineuser" ADD install.sh /home/wineuser/ -RUN ./install.sh --xvfb +RUN ./install.sh --xvfb; test -f /home/wineuser/.wine.cds/drive_c/CODESYS/CODESYS/Common/CODESYS.exe +USER root +RUN apt-get install -y tigervnc-standalone-server + +# +# Stage 2 +# Copy CODESYS installation into debian testing, as stretch has +# a bug in xinetd. The limits for nofile can't be configured. +# +FROM debian:testing ENV WINEPREFIX=/home/wineuser/.wine.cds +# Setup VNC with xinetd +EXPOSE 8050 +USER root +RUN dpkg --add-architecture i386 +RUN apt-get update && \ + apt-get install -y wine32-development wine64-development wget subversion winbind python-requests cabextract xvfb xdotool jwm procps +RUN apt-get install -y tigervnc-standalone-server xinetd ratpoison + +# Configure locales +RUN useradd -ms /bin/bash wineuser +RUN apt-get install -y locales +RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \ + locale-gen +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US:en +ENV LC_ALL en_US.UTF-8 + +ADD Xvnc /etc/xinetd.d/Xvnc +ADD xinetd-vnc /xinetd-vnc + +USER wineuser +COPY --from=0 /home/wineuser/.wine.cds /home/wineuser/.wine.cds +USER root +RUN chown -R wineuser:users /home/wineuser/.wine.cds + + +#ENTRYPOINT [ "xinetd", "-dontfork" ] +