Add support for multi-stack installation

Cleanup use of sudo for copying files. Apply docker specific
configuration inside user directory.

Utilize multiple juju controllers utilizing the stack name.

Create stack with no exposed host ports via '-nohostports' for creating
multiple instances of osm (useful in CI)

Change-Id: I32e2eab2cbae7fa6939eee2df556f6788d065a92
Signed-off-by: Mike Marchetti <mmarchetti@sandvine.com>
diff --git a/installers/docker/docker-compose.yaml b/installers/docker/docker-compose.yaml
index a1e88bc..fa27900 100644
--- a/installers/docker/docker-compose.yaml
+++ b/installers/docker/docker-compose.yaml
@@ -20,7 +20,7 @@
   kafka:
     image: wurstmeister/kafka
     ports:
-      - "9092:9092"
+      - "9092"
     networks:
       - netOSM
     environment:
@@ -49,7 +49,7 @@
       OSMNBI_DATABASE_HOST: mongo
       OSMNBI_MESSAGE_HOST: kafka
     ports:
-      - "9999:9999"
+      - "${OSM_NBI_PORTS:-9999:9999}"
     #depends_on:
     #  - kafka
     #  - mongo
@@ -90,7 +90,7 @@
     #depends_on:
     #  - ro-db
     ports:
-      - "9090:9090"
+      - "${OSM_RO_PORTS:-9090:9090}"
   mon:
     image: osm/mon
     networks:
@@ -105,7 +105,7 @@
     #depends_on:
     #  - kafka
     ports:
-      - "8662:8662"
+      - "8662"
   pm:
     image: osm/pm
     networks:
@@ -124,5 +124,4 @@
     #depends_on:
     #  - nbi
     ports:
-      - "80:80"
-
+      - "${OSM_UI_PORTS:-80:80}"