blob: b83f5d9305b3e20dbab971bf58cb15f26a1e4f8f [file] [log] [blame]
Luca Prete222f2602018-01-27 12:48:04 -08001FROM onosproject/onos:1.10.11 as build
David K. Bainbridge251024b2017-08-10 09:11:23 -07002MAINTAINER Open Networking Foundation <info@opennetworking.org>
3
4ENV BUILD_ROOT=/build
5
6COPY apps/ /build
7
8# The ENV settings for ONOS, KARAF_VERSION, KARAF_ROOT, KARAF_M2, and APPS_ROOT
9# must be replicated below to the final image as they are shared between stages
10ENV ONOS=/root/onos
11ENV APPS_ROOT=${ONOS}/apps
David K. Bainbridge56da9572017-08-17 09:56:50 -070012ENV KARAF_VERSION=3.0.8
David K. Bainbridge251024b2017-08-10 09:11:23 -070013ENV KARAF_ROOT=${ONOS}/apache-karaf-${KARAF_VERSION}
14ENV KARAF_M2=${KARAF_ROOT}/system
15ENV APP_INSTALL_ROOT=/expand
16
17# Specify application versions to install
Jonathan Hartd01d4ff2017-09-12 11:42:54 -070018ENV AAA_VERSION=1.3.0 \
19 CONFIG_VERSION=1.3.0 \
20 IGMP_VERSION=1.3.0 \
21 IGMP_PROXY_VERSION=1.1.0 \
22 MCAST_VERSION=1.3.0 \
23 OLT_VERSION=1.3.0 \
24 SADIS_VERSION=1.1.0 \
25 VTN_VERSION=1.3.0 \
26 L2_DHCP_RELAY_VERSION=1.1.0
David K. Bainbridge251024b2017-08-10 09:11:23 -070027
28ENV APPS="aaa-${AAA_VERSION} \
29 cord-config-${CONFIG_VERSION} \
30 igmp-${IGMP_VERSION} \
31 mcast-${MCAST_VERSION} \
32 olt-app-${OLT_VERSION} \
33 sadis-app-${SADIS_VERSION} \
34 vtn-${VTN_VERSION} \
35 aaa-${AAA_VERSION} \
36 onos-app-igmpproxy-${IGMP_PROXY_VERSION} \
37 dhcpl2relay-${L2_DHCP_RELAY_VERSION}"
38
39# Install the applications
40COPY config/app-install.sh .
David K. Bainbridgee26c8702017-08-11 11:04:39 -070041RUN chmod 755 ./app-install.sh
42RUN ./app-install.sh
David K. Bainbridge251024b2017-08-10 09:11:23 -070043
44# Create the final image coping over the installed applications from the build stage
Luca Prete222f2602018-01-27 12:48:04 -080045FROM onosproject/onos:1.10.11
David K. Bainbridge56da9572017-08-17 09:56:50 -070046
47# Install Key Store Options
48ENV JAVA_OPTS="${JAVA_OPTS:--DenableOFTLS=true -Djavax.net.ssl.keyStore=/home/sdn/wiki/onos.jks -Djavax.net.ssl.keyStorePassword=222222 -Djavax.net.ssl.trustStore=/home/sdn/wiki/onos.jks -Djavax.net.ssl.trustStorePassword=222222}"
David K. Bainbridge251024b2017-08-10 09:11:23 -070049
50ENV ONOS=/root/onos
David K. Bainbridge56da9572017-08-17 09:56:50 -070051ENV KARAF_VERSION=3.0.8
David K. Bainbridge251024b2017-08-10 09:11:23 -070052ENV KARAF_ROOT=${ONOS}/apache-karaf-${KARAF_VERSION}
53ENV KARAF_M2=${KARAF_ROOT}/system
54ENV APPS_ROOT=${ONOS}/apps
55
56COPY --from=build ${KARAF_M2}/ ${KARAF_M2}/
57RUN echo "${KARAF_M2} ${APPS_ROOT}"
58COPY --from=build ${APPS_ROOT}/ ${APPS_ROOT}/
59COPY config/netcfg.json $KARAF_ROOT/../config/network-cfg.json
60
David K. Bainbridge56da9572017-08-17 09:56:50 -070061RUN touch $ONOS/apps/org.onosproject.hostprovider/active
David K. Bainbridge251024b2017-08-10 09:11:23 -070062RUN touch $ONOS/apps/org.onosproject.openflow-base/active
David K. Bainbridge56da9572017-08-17 09:56:50 -070063RUN touch $ONOS/apps/org.onosproject.openflow-base/active
64
65# Create ONOS Key Directory
66RUN mkdir -p /home/sdn/wiki
67COPY docker/onos_cfg/ /home/sdn/wiki