Skip to content

Commit b8e5582

Browse files
authored
Create Dockerfile
1 parent aa45220 commit b8e5582

File tree

1 file changed

+131
-0
lines changed

1 file changed

+131
-0
lines changed

Dockerfile

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
FROM ubuntu:16.04
2+
3+
# Image containing:
4+
# 1. Ubuntu:16.04
5+
# 2. Java (1.8.0_161)
6+
# 3. Maven (3.5.4)
7+
# 4. Node.js (8.9.4)
8+
# 5. NPM (5.6.0)
9+
# 6. Bower (1.8.2)
10+
# 7. Yarn (1.5.1)
11+
# 8. Go (1.10.2)
12+
# 9. Ruby()
13+
# 10. Gradle (4.5.1)
14+
# 11. Unzip
15+
# 12. Pip3
16+
# 13. Pip
17+
# 14. SBT
18+
# 15. Scala
19+
20+
RUN touch /buildStart.txt && \
21+
apt-get update && \
22+
apt-get install -y --no-install-recommends locales && \
23+
locale-gen en_US.UTF-8 && \
24+
apt-get dist-upgrade -y && \
25+
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" > /etc/apt/sources.list.d/webupd8team-java-trusty.list && \
26+
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 && \
27+
apt-get update && \
28+
apt-get clean all
29+
30+
# Install curl wget and openjdk 8
31+
RUN apt-get -y install software-properties-common && \
32+
add-apt-repository -y ppa:openjdk-r/ppa && \
33+
apt-get update && \
34+
apt-get -y install openjdk-8-jdk && \
35+
apt-get install -y wget && \
36+
apt-get install -y curl && \
37+
rm -rf /var/lib/apt/lists/*
38+
39+
# Install git
40+
RUN apt-get update && apt-get install -y git
41+
42+
# Install Maven (3.5.4)
43+
ARG MAVEN_VERSION=3.5.4
44+
ARG USER_HOME_DIR="/root"
45+
ARG SHA=CE50B1C91364CB77EFE3776F756A6D92B76D9038B0A0782F7D53ACF1E997A14D
46+
ARG BASE_URL=https://apache.osuosl.org/maven/maven-3/${MAVEN_VERSION}/binaries
47+
48+
RUN mkdir -p /usr/share/maven /usr/share/maven/ref \
49+
&& curl -fsSL -o /tmp/apache-maven.tar.gz ${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
50+
&& echo "${SHA} /tmp/apache-maven.tar.gz" | sha256sum -c - \
51+
&& tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 \
52+
&& rm -f /tmp/apache-maven.tar.gz \
53+
&& ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
54+
55+
ENV MAVEN_HOME /usr/share/maven
56+
ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2"
57+
58+
# Install Node.js (8.9.4) + NPM (5.6.0)
59+
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash && \
60+
apt-get install -y nodejs build-essential
61+
62+
# Install Bower
63+
RUN npm i -g bower --allow-root
64+
65+
# Premmsion to bower
66+
RUN echo '{ "allow_root": true }' > /root/.bowerrc
67+
68+
# Install Yarn
69+
RUN npm i -g yarn@1.5.1
70+
71+
# Install unzip files
72+
RUN apt-get update && apt-get install -y unzip zip
73+
74+
#install Gradle
75+
RUN wget -q https://services.gradle.org/distributions/gradle-4.5.1-bin.zip \
76+
&& unzip gradle-4.5.1-bin.zip -d /opt \
77+
&& rm gradle-4.5.1-bin.zip
78+
79+
# Set Gradle in the environment variables
80+
ENV GRADLE_HOME /opt/gradle-4.5.1
81+
ENV PATH $PATH:/opt/gradle-4.5.1/bin
82+
83+
# Install python pip
84+
RUN apt-get install -y python3-pip
85+
RUN apt-get install -y python-pip
86+
RUN python -m pip install --upgrade pip setuptools
87+
RUN pip install virtualenv
88+
89+
####Install GO####
90+
RUN \
91+
mkdir -p /goroot && \
92+
curl https://storage.googleapis.com/golang/go1.10.2.linux-amd64.tar.gz | tar xvzf - -C /goroot --strip-components=1
93+
94+
####Install Ruby####
95+
RUN \
96+
apt-get update && \
97+
apt-get install -y ruby ruby-dev ruby-bundler && \
98+
rm -rf /var/lib/apt/lists/*
99+
100+
RUN apt-get update
101+
RUN apt-get install -y --force-yes build-essential curl git
102+
RUN apt-get install -y --force-yes zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt-dev
103+
RUN apt-get clean
104+
105+
####Set GO environment variables####
106+
ENV GOROOT /goroot
107+
ENV GOPATH /gopath
108+
ENV PATH $GOROOT/bin:$GOPATH/bin:$PATH
109+
110+
####Install GO package managers####
111+
RUN go get -u github.com/golang/dep/cmd/dep
112+
RUN go get github.com/tools/godep
113+
RUN go get github.com/LK4D4/vndr
114+
RUN go get -u github.com/kardianos/govendor
115+
RUN go get -u github.com/gpmgo/gopm
116+
RUN go get github.com/Masterminds/glide
117+
118+
####Install Scala####
119+
RUN wget https://downloads.lightbend.com/scala/2.12.6/scala-2.12.6.deb --no-check-certificate
120+
RUN dpkg -i scala-2.12.6.deb
121+
122+
####Install SBT####
123+
RUN curl -L -o sbt.deb http://dl.bintray.com/sbt/debian/sbt-1.1.6.deb
124+
RUN dpkg -i sbt.deb
125+
RUN apt-get update && \
126+
apt-get install sbt
127+
128+
129+
130+
COPY pipe /usr/bin/
131+
ENTRYPOINT ["/usr/bin/pipe.sh"]

0 commit comments

Comments
 (0)