Skip to content

Instantly share code, notes, and snippets.

@khorevaa
Last active September 11, 2017 15:21
Show Gist options
  • Save khorevaa/59a2fb82c0c0c7e1c5959ca899c9efc9 to your computer and use it in GitHub Desktop.
Save khorevaa/59a2fb82c0c0c7e1c5959ca899c9efc9 to your computer and use it in GitHub Desktop.
1c
FROM daald/ubuntu32:trusty
ENV DEBIAN_FRONTEND noninteractive
ARG DEB_CACHE=http://archive.ubuntu.com
WORKDIR /tmp
RUN set -xe \
# Шрифты MS содержатся в отдельном репозитории
&& echo "deb http://archive.ubuntu.com/ubuntu precise multiverse" >> /etc/apt/sources.list \
# Принимаем EULA Microfost на использование шрифтов
&& echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections \
&& apt-get update \
&& apt-get -y --force-yes upgrade \
&& apt-get install -y --no-install-recommends \
curl \
dpkg-dev \
# Опциональные зависимости толстого клиента (см. ИТС)
# Разработка и администрирование - 1С:Предприятие <версия> документация - Руководство администратора
# - Требования к аппаратуре и программному обеспечению - Прочие требования - Для ОС Linux
libwebkit-dev libcanberra-gtk-module \
imagemagick \
libfreetype6 \
libfontconfig1 \
libgsf-1-114 \
libglib2.0-bin \
unixodbc \
# необходим multiverse
ttf-mscorefonts-installer \
&& apt-get clean \
&& rm -rf /var/cache/apt/archives \
&& rm -rf /usr/share/doc/ \
&& rm -rf /usr/share/man/
RUN localedef -i ru_RU -c -f UTF-8 -A /usr/share/locale/locale.alias ru_RU.UTF-8
# Даже для выполнения консольных команд платформы необходим X сервер
#RUN set -xe \
# && apt-get install -y --no-install-recommends \
# xserver-xorg-video-dummy \
# && rm -rf /var/lib/apt/lists/*
ENV DISPLAY :100
ENV LANG ru_RU.utf8
RUN set -xe \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
unzip \
mono-complete \
#ngrok-client \
wget \
zip \
unzip \
tar \
mono-runtime \
mono-mcs \
git-core \
#x11vnc \
#vnc4server \
xvfb \
#supervisor \
openssh-server \
#novnc \
ttf-ubuntu-font-family \
xfonts-cyrillic \
fluxbox \
#python-pip \
gcc \
language-pack-ru \
language-pack-ru-base \
&& apt-get clean \
&& rm -rf /var/cache/apt/archives \
&& rm -rf /usr/share/doc/ \
&& rm -rf /usr/share/man/
RUN apt-get update \
&& apt-get install -y --force-yes \
software-properties-common \
python-software-properties
RUN apt-add-repository ppa:dmpas/e8 \
&& apt-get update \
&& apt-get install -y --force-yes v8unpack ctool1cd nano
ENV PLT_VERSION 8.3.9-2309
ENV PLT_ARCH i386
#VOLUME /opt/data
#VOLUME /opt/1C/v8.3/x86_64/conf/
#VOLUME /var/log/1c/logs
#CMD /bin/bash
# SSH login fix. Otherwise user is kicked off after login
RUN sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd
# Add user developer to the image
RUN adduser --quiet developer
RUN usermod -g root developer
RUN echo "developer:x:${uid}:${gid}:Developer,,,:/home/developer:/bin/bash" >> /etc/passwd && \
echo "developer:x:${uid}:" >> /etc/group && \
echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer && \
chmod 0440 /etc/sudoers.d/developer
# Set password for the sonar-slave user
RUN echo "developer:developer" | chpasswd
# config sshd
RUN mkdir -p /var/run/sshd
# =============1C========================
RUN mkdir /opt/dist
ADD ./dist/ /opt/dist/
RUN dpkg -i /opt/dist/onec/1c-enterprise83-common_${PLT_VERSION}_${PLT_ARCH}.deb \
/opt/dist/onec/1c-enterprise83-server_${PLT_VERSION}_${PLT_ARCH}.deb \
/opt/dist/onec/1c-enterprise83-client_${PLT_VERSION}_${PLT_ARCH}.deb
RUN mkdir /opt/data \
&& mkdir /opt/reps \
&& mkdir /opt/1C/v8.3/i386/conf && chmod -R 777 /opt/1C/v8.3/i386/conf \
&& mkdir -p /var/log/1c/logs && chmod -R 777 /var/log/1c \
&& chmod -R 777 /opt/1C/v8.3/i386
# =======================================
# ==============OSCRIPT==================
#RUN curl -o /tmp/oscript/oscript-latest.zip -sSL http://oscript.io/downloads/night-build/latest.zip \
# && unzip -o /tmp/oscript/oscript-latest.zip -d /usr/lib/osc-engine \
# && echo "#!/bin/sh" > /usr/bin/oscript \
# && echo '' >> /usr/bin/oscript \
# && echo 'mono /usr/lib/osc-engine/bin/oscript.exe "$@"' >> /usr/bin/oscript \
# && chmod +x /usr/bin/oscript
RUN dpkg -i /opt/dist/oscript/onescript-engine_1.0.17_all.deb
# =================================
RUN curl -o /etc/init.d/xvfb -sSL https://gist.githubusercontent.com/Khorevaa/f14c7f560c547eb43ff454a1c3520009/raw/6c02e0b80bf2b0f2b72762697a2e7d9ac3a8d0af/xvfb \
&& chmod 755 /etc/init.d/xvfb
# ==========JAVA=============
# Install Java repository.
#RUN apt-get update && apt-get -y upgrade && \
# apt-get -y install software-properties-common && \
# add-apt-repository ppa:webupd8team/java -y && apt-get update
# install oracle java 8 latest
#RUN (echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections) && \
# apt-get install -y oracle-java8-installer oracle-java8-set-default
# Define commonly used JAVA_HOME variable
#ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
# ========================
#ENV PATH $JAVA_HOME/bin:$PATH
RUN mkdir -p /opt/slave
RUN chmod +x /opt/dist/lib/patch \
&& /opt/dist/lib/patch \
&& rm -rf /opt/dist/* \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get autoremove -y --purge \
&& apt-get clean \
&& rm -rf /var/cache/apt/archives \
&& rm -rf /usr/share/doc/ \
&& rm -rf /usr/share/man/
RUN chown developer:root /opt/slave
# Define working directory.
WORKDIR /opt/slave
# setup container timezone
ENV TZ=Europe/Moscow
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# Standard SSH port
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
#ENTRYPOINT /opt/deb/build.sh
#ENTRYPOINT ["/usr/local/bin/xstart"]
#!/bin/bash
#set -x
set -e
PATH_1C=/opt/1C/v8.3/i386/backbas.so
/opt/dist/lib/patch-x86 ${PATH_1C}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment