diff options
author | Areli Fuss <af732p@att.com> | 2017-08-22 15:34:37 +0300 |
---|---|---|
committer | Areli Fuss <af732p@att.com> | 2017-09-06 10:13:30 +0300 |
commit | 547839b3d0027aa7e0329a13a206b139c0712b95 (patch) | |
tree | 853b77d067f2d7d976a960d5851c6088381cdbc1 | |
parent | 121dc20684f4972e5009e7bb576cce46751c9e81 (diff) |
Initial Docker baselines for SDC
Set SDC baseline Dockers in order to
make the actual Docker build faster and simpler
Change-Id: I9eeff39b33507a8bc4e4628b0d2208caa6508ae5
Issue-Id: SDC-245
Signed-off-by: Areli Fuss <af732p@att.com>
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | base_sdc-backend/Dockerfile | 29 | ||||
-rw-r--r-- | base_sdc-cassandra/Dockerfile | 23 | ||||
-rw-r--r-- | base_sdc-elasticsearch/Dockerfile | 21 | ||||
-rw-r--r-- | base_sdc-frontend/Dockerfile | 18 | ||||
-rw-r--r-- | base_sdc-kibana/Dockerfile | 18 | ||||
-rw-r--r-- | base_sdc-sanity/Dockerfile | 24 | ||||
-rw-r--r-- | pom.xml | 143 |
8 files changed, 277 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2f7896d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +target/ diff --git a/base_sdc-backend/Dockerfile b/base_sdc-backend/Dockerfile new file mode 100644 index 0000000..2bdc6d8 --- /dev/null +++ b/base_sdc-backend/Dockerfile @@ -0,0 +1,29 @@ +FROM jetty:9.3-jre8 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + + +RUN apt-get -y update && apt-get -y install \ + apt-utils \ + curl \ + vim \ + jq \ + python \ + libssl-dev \ + libcurl4-openssl-dev \ + python-dev \ + gcc \ + python-pip + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash + +RUN pip install pycurl + diff --git a/base_sdc-cassandra/Dockerfile b/base_sdc-cassandra/Dockerfile new file mode 100644 index 0000000..3ee60a9 --- /dev/null +++ b/base_sdc-cassandra/Dockerfile @@ -0,0 +1,23 @@ +FROM cassandra:2.1.17 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +#ENV DEBIAN_FRONTEND noninteractive +RUN apt-get -y update && apt-get -y install --no-install-recommends \ + curl \ + vim \ + apt-utils \ + openjdk-8-jdk + +RUN update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash + diff --git a/base_sdc-elasticsearch/Dockerfile b/base_sdc-elasticsearch/Dockerfile new file mode 100644 index 0000000..09e8e78 --- /dev/null +++ b/base_sdc-elasticsearch/Dockerfile @@ -0,0 +1,21 @@ +FROM elasticsearch:2.1.2 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +RUN apt-get -y update && apt-get -y install \ + apt-utils \ + curl \ + vim + +RUN mkdir -p /var/chef/nodes + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash + diff --git a/base_sdc-frontend/Dockerfile b/base_sdc-frontend/Dockerfile new file mode 100644 index 0000000..5a8e9e0 --- /dev/null +++ b/base_sdc-frontend/Dockerfile @@ -0,0 +1,18 @@ +FROM jetty:9.3-jre8 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +RUN apt-get -y update && apt-get -y install \ + apt-utils \ + curl \ + vim + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash diff --git a/base_sdc-kibana/Dockerfile b/base_sdc-kibana/Dockerfile new file mode 100644 index 0000000..10ece1a --- /dev/null +++ b/base_sdc-kibana/Dockerfile @@ -0,0 +1,18 @@ +FROM kibana:4.3.3 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi && \ + if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +RUN apt-get -y update && apt-get -y install \ + curl \ + vim + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash + diff --git a/base_sdc-sanity/Dockerfile b/base_sdc-sanity/Dockerfile new file mode 100644 index 0000000..29f8b20 --- /dev/null +++ b/base_sdc-sanity/Dockerfile @@ -0,0 +1,24 @@ +FROM ubuntu:16.04 + +ARG HTTP_PROXY +ARG HTTPS_PROXY + +ENV HTTP_PROXY ${HTTP_PROXY} +ENV HTTPS_PROXY ${HTTPS_PROXY} + +RUN if [ ! -z ${HTTP_PROXY} ]; then echo "Acquire::http::proxy \"${HTTP_PROXY}\";" >> /etc/apt/apt.conf; fi +RUN if [ ! -z ${HTTPS_PROXY} ]; then echo "Acquire::https::proxy \"${HTTPS_PROXY}\";" >> /etc/apt/apt.conf; fi + +RUN apt-get -y update && apt-get -y install --no-install-recommends \ + apt-utils \ + curl \ + default-jre \ + openjdk-8-jdk \ + vim + +# Set Java links +RUN update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java + +# install chef-solo +RUN curl -L https://omnitruck.chef.io/install.sh | bash + @@ -0,0 +1,143 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>sdc.att.app</groupId> + <artifactId>sdc_docker_baseline</artifactId> + <packaging>jar</packaging> + <version>1.0.0</version> + <name>sdc_docker_baseline</name> + <url>http://maven.apache.org</url> + + <properties> + <timestamp>${maven.build.timestamp}</timestamp> + <maven.build.timestamp.format>yyyy.MM.dd.HH.mm</maven.build.timestamp.format> + <docker.tag>${project.version}-${timestamp}</docker.tag> + <docker.latest.tag>${project.version}-latest</docker.latest.tag> + </properties> + + + <build> + <plugins> + <plugin> + <groupId>io.fabric8</groupId> + <artifactId>docker-maven-plugin</artifactId> + <version>0.15.1</version> + <configuration> + <images> + <!-- base_sdc-backend --> + <image> + <name>openecomp/base_sdc-backend</name> + <alias>base_sdc-backend</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-backend</dockerFileDir> + </build> + </image> + <!-- base_sdc-frontend --> + <image> + <name>openecomp/base_sdc-frontend</name> + <alias>base_sdc-frontendt</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-frontend</dockerFileDir> + </build> + </image> + <!-- base_sdc-frontend --> + <image> + <name>openecomp/base_sdc-kibana</name> + <alias>base_sdc-kibana</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-kibana</dockerFileDir> + </build> + </image> + <!-- base_sdc-cassandra --> + <image> + <name>openecomp/base_sdc-cassandra</name> + <alias>base_sdc-cassandra</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-cassandra</dockerFileDir> + </build> + </image> + <!-- base_sdc-elasticsearch --> + <image> + <name>openecomp/base_sdc-elasticsearch</name> + <alias>base_sdc-elasticsearch</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-elasticsearch</dockerFileDir> + </build> + </image> + <!-- base_sdc-sanity --> + <image> + <name>openecomp/base_sdc-sanity</name> + <alias>base_sdc-sanity</alias> + <build> + <cleanup>true</cleanup> + <tags> + <tag>${docker.tag}</tag> + <tag>${docker.latest.tag}</tag> + </tags> + <dockerFileDir>${project.basedir}/base_sdc-sanity</dockerFileDir> + </build> + </image> + </images> + </configuration> + <executions> + <execution> + <id>clean-images</id> + <phase>pre-clean</phase> + <goals> + <goal>remove</goal> + </goals> + <configuration> + <removeAll>true</removeAll> + <image>openecomp/base_sdc-backend,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-sanity</image> + </configuration> + </execution> + + <execution> + <id>generate-images</id> + <phase>package</phase> + <goals> + <goal>build</goal> + </goals> + </execution> + + <execution> + <id>push-images</id> + <phase>deploy</phase> + <goals> + <goal>build</goal> + <goal>push</goal> + </goals> + <configuration> + <image>openecomp/base_sdc-backend,openecomp/base_sdc-frontend,openecomp/base_sdc-elasticsearch,openecomp/base_sdc-kibana,openecomp/base_sdc-sanity</image> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> |