blob: bba42aac80a079154d9d31a1965dc6bd53ce5c09 [file] [log] [blame]
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -04001# docker-compose for ONAP portal containers: database, microservice, portal apps.
Sylvain Desbureaux33375822017-10-13 10:33:05 +02002# Relies on .env file, which CANNOT be specified via command-line option
Christopher Lott (cl778h)51d83152017-09-28 11:18:14 -04003# Works in multiple environments; does not pull from a Nexus registry.
4# Exposes the portal apps docker (but not DB nor WMS dockers) on the host network.
5# Images must be pulled from ONAP Nexus registry after logging in like this:
6# docker login -u USER -p PASS nexus3.onap.org:10001
Sylvain Desbureaux33375822017-10-13 10:33:05 +02007# Uses healthcheck feature added in docker-compose v2.1
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -04008
Christopher Lott (cl778h)ec4eb9c2017-10-11 11:42:04 -04009version: '2.1'
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040010
11services:
12
Kanagaraj Manickam k00365106bfbe3352017-08-30 09:33:23 +053013 cli:
Christopher Lott (cl778h)0acb4fc2017-10-02 12:09:24 -040014 image: ${CLI_IMG_NAME}:${PORTAL_TAG}
Kanagaraj Manickam k00365106bfbe3352017-08-30 09:33:23 +053015 environment:
Kanagaraj Manickam k00365106bdbb16a2018-04-19 14:11:24 +053016 OPEN_CLI_MODE: 'daemon'
Kanagaraj Manickam k00365106bfbe3352017-08-30 09:33:23 +053017 ports:
18 - 8080:80
Kanagaraj Manickam k00365106fefebed2017-10-05 14:42:52 +053019 - 9090:8080
Kanagaraj Manickam k00365106bfbe3352017-08-30 09:33:23 +053020 logging:
21 driver: json-file
22
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040023 # Config files may use hostname "portal-db"
24 portal-db:
25 image: ${DB_IMG_NAME}:${PORTAL_TAG}
26 environment:
27 MYSQL_ROOT_PASSWORD: 'Aa123456'
28 expose:
29 - 3306
30 volumes:
31 # Just specify a path and let the Engine create a volume
32 - /var/lib/mysql
st782s21a87612018-01-30 17:29:36 -050033 # Inject the onboarding script at start time
34 - ./Apps_Users_OnBoarding_Script.sql:/docker-entrypoint-initdb.d/zzz_apps_users_onboarding.sql
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040035 logging:
36 driver: json-file
Sylvain Desbureaux33375822017-10-13 10:33:05 +020037 healthcheck:
38 test: [ "CMD", "mysqladmin", "ping", "-h", "localhost" ]
39 timeout: 10s
40 retries: 30
Kishore Reddy, Gujja (kg811t)4ee89672018-03-20 17:15:25 -040041
42 # Config files may use hostname "portal-cassandra"
43 portal-cassandra:
44 image: ${CDR_IMG_NAME}:${PORTAL_TAG}
45 environment:
46 - CASSUSER=root
47 - CASSPASS=Aa123456
st782s2e89d1f2018-05-03 16:15:58 -040048 - JVM_OPTS=-Xmx2536m -Xms2536m
Kishore Reddy, Gujja (kg811t)4ee89672018-03-20 17:15:25 -040049 expose:
50 - 7000
51 - 7001
52 - 7199
53 - 9042
54 - 9160
55 ports:
56 - 7000:7000
57 - 7001:7001
58 - 7199:7199
59 - 9042:9042
60 - 9160:9160
61 volumes:
62 - ./portal.cql:/docker-entrypoint-initdb.d/zzz_portal.cql
63 - ./portalsdk.cql:/docker-entrypoint-initdb.d/zzz_portalsdk.cql
64 links:
65 - portal-db
66 depends_on:
67 portal-db:
68 condition: service_healthy
69
70 # Config files may use hostname "portal-zk"
71 portal-zk:
72 image: ${ZK_IMG_NAME}:${PORTAL_TAG}
73 expose:
74 - 2181
75 ports:
76 - 2181:2181
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040077
Sylvain Desbureaux33375822017-10-13 10:33:05 +020078 # The app config file uses the docker name above
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040079 portal-wms:
80 image: ${WMS_IMG_NAME}:${PORTAL_TAG}
81 expose:
82 - 8082
83 links:
84 - portal-db
85 depends_on:
Sylvain Desbureaux33375822017-10-13 10:33:05 +020086 portal-db:
87 condition: service_healthy
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040088 volumes:
Sylvain Desbureaux33375822017-10-13 10:33:05 +020089 - ${PROPS_DIR}/ONAPWIDGETMS/application.properties:/application.properties
st782s21a87612018-01-30 17:29:36 -050090 - ${PROPS_DIR}/ONAPWIDGETMS/application.yml:/application.yml
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040091 command:
st782s21a87612018-01-30 17:29:36 -050092 - /start-wms.sh
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040093 logging:
94 driver: json-file
95
st782s21a87612018-01-30 17:29:36 -050096 portal-app:
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040097 image: ${EP_IMG_NAME}:${PORTAL_TAG}
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -040098 ports:
99 - 8989:8080
100 - 8010:8009
101 - 8006:8005
102 links:
103 - portal-db
104 - portal-wms
st782s7c631102018-04-07 05:18:34 -0400105 - portal-zk
106 - portal-cassandra
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -0400107 depends_on:
Sylvain Desbureaux33375822017-10-13 10:33:05 +0200108 portal-db:
109 condition: service_healthy
110 portal-wms:
111 condition: service_started
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -0400112 volumes:
Sylvain Desbureaux33375822017-10-13 10:33:05 +0200113 - ${PROPS_DIR}/ONAPPORTAL/system.properties:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/conf/system.properties
114 - ${PROPS_DIR}/ONAPPORTAL/fusion.properties:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties
115 - ${PROPS_DIR}/ONAPPORTAL/portal.properties:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/classes/portal.properties
Kishore Reddy, Gujja (kg811t)4ee89672018-03-20 17:15:25 -0400116 - ${PROPS_DIR}/ONAPPORTAL/music.properties:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/classes/music.properties
Sylvain Desbureaux33375822017-10-13 10:33:05 +0200117 - ${PROPS_DIR}/ONAPPORTAL/openid-connect.properties:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/classes/openid-connect.properties
118 - ${PROPS_DIR}/ONAPPORTAL/logback.xml:${WEBAPPS_DIR}/ONAPPORTAL/WEB-INF/classes/logback.xml
st782s21a87612018-01-30 17:29:36 -0500119 - ${LOGS_DIR}:/opt/apache-tomcat-8.0.37/logs
120 command:
121 - /start-apache-tomcat.sh
122 # see comments in .env file
123 - -i
124 - $EXTRA_HOST_IP
125 - -n
126 - $EXTRA_HOST_NAME
127 logging:
128 driver: json-file
st782s2e89d1f2018-05-03 16:15:58 -0400129 environment:
130 - CATALINA_OPTS=-Xmx1536m -Xms1536m
st782s21a87612018-01-30 17:29:36 -0500131 portal-sdk:
132 image: ${SDK_IMG_NAME}:${PORTAL_TAG}
133 ports:
134 - 8990:8080
135 links:
136 - portal-db
137 - portal-wms
st782s7c631102018-04-07 05:18:34 -0400138 - portal-zk
139 - portal-cassandra
st782s21a87612018-01-30 17:29:36 -0500140 depends_on:
141 portal-db:
142 condition: service_healthy
143 volumes:
Sylvain Desbureaux33375822017-10-13 10:33:05 +0200144 - ${PROPS_DIR}/ONAPPORTALSDK/fusion.properties:${WEBAPPS_DIR}/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties
145 - ${PROPS_DIR}/ONAPPORTALSDK/system.properties:${WEBAPPS_DIR}/ONAPPORTALSDK/WEB-INF/conf/system.properties
146 - ${PROPS_DIR}/ONAPPORTALSDK/portal.properties:${WEBAPPS_DIR}/ONAPPORTALSDK/WEB-INF/classes/portal.properties
Kishore Reddy, Gujja (kg811t)4ee89672018-03-20 17:15:25 -0400147 - ${PROPS_DIR}/ONAPPORTALSDK/music.properties:${WEBAPPS_DIR}/ONAPPORTALSDK/WEB-INF/classes/music.properties
Sylvain Desbureaux33375822017-10-13 10:33:05 +0200148 - ${PROPS_DIR}/ONAPPORTALSDK/logback.xml:${WEBAPPS_DIR}/ONAPPORTALSDK/WEB-INF/classes/logback.xml
Christopher Lott (cl778h)de8b8df2017-09-28 16:59:17 -0400149 - ${LOGS_DIR}:/opt/apache-tomcat-8.0.37/logs
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -0400150 command:
st782s21a87612018-01-30 17:29:36 -0500151 - /start-apache-tomcat.sh
Christopher Lott (cl778h)978dbcf2017-08-23 18:27:19 -0400152 logging:
153 driver: json-file
st782s2e89d1f2018-05-03 16:15:58 -0400154 environment:
155 - CATALINA_OPTS=-Xmx1536m -Xms1536m