-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathDockefile.ubuntu-trusty
41 lines (34 loc) · 2.45 KB
/
Dockefile.ubuntu-trusty
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Based on: https://github.com/evarga/docker-images/blob/master/jenkins-slave/Dockerfile
FROM ubuntu:trusty
MAINTAINER Jarle Aase <[email protected]>
# In case you need proxy
#RUN echo 'Acquire::http::Proxy "http://127.0.0.1:8080";' >> /etc/apt/apt.conf
RUN apt-get -q update &&\
DEBIAN_FRONTEND="noninteractive" apt-get -q upgrade -y -o Dpkg::Options::="--force-confnew" --no-install-recommends &&\
DEBIAN_FRONTEND="noninteractive" apt-get -q install -y -o Dpkg::Options::="--force-confnew" --no-install-recommends openssh-server software-properties-common &&\
DEBIAN_FRONTEND="noninteractive" add-apt-repository ppa:beineri/opt-qt-5.10.1-trusty &&\
DEBIAN_FRONTEND="noninteractive" add-apt-repository ppa:ubuntu-toolchain-r/test -y &&\
apt-get -q update &&\
DEBIAN_FRONTEND="noninteractive" apt-get install -y qt510-meta-full qt510base qt510declarative qt510tools qt510multimedia qt510svg qt510graphicaleffects qt510quickcontrols qt510quickcontrols2 qt510sensors qt510connectivity qt510location qt510websockets qt510webchannel qt5103d qt510canvas3d qt510scxml qt510webengine &&\
DEBIAN_FRONTEND="noninteractive" apt-get -q install -y g++ git make \
qt510-meta-full libgl1-mesa-dev ruby build-essential curl gcc-7 g++-7 libfuse2 fuse &&\
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7 &&\
sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd &&\
mkdir -p /var/run/sshd &&\
DEBIAN_FRONTEND="noninteractive" apt-get -q install -y -o Dpkg::Options::="--force-confnew" --no-install-recommends software-properties-common &&\
add-apt-repository -y ppa:openjdk-r/ppa &&\
apt-get -q update &&\
DEBIAN_FRONTEND="noninteractive" apt-get -q install -y -o Dpkg::Options::="--force-confnew" --no-install-recommends openjdk-8-jre-headless &&\
apt-get -q clean -y && rm -rf /var/lib/apt/lists/* && rm -f /var/cache/apt/*.bin &&\
curl -L -o /usr/local/bin/linuxdeployqt https://github.com/probonopd/linuxdeployqt/releases/download/5/linuxdeployqt-5-x86_64.AppImage &&\
chmod +x /usr/local/bin/linuxdeployqt
# Set user jenkins to the image
# We need to set the same uid as user "jenkins" have on the host machine
RUN useradd -u 111 -m -d /home/jenkins -s /bin/bash jenkins &&\
echo "jenkins:jenkins" | chpasswd
RUN adduser jenkins fuse
RUN chmod a+r /etc/fuse.conf
# Standard SSH port
EXPOSE 22
# Default command
CMD ["/usr/sbin/sshd", "-D"]