Add support for scaling up and refreshing service info.
diff --git a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerContainerFactory.java b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerContainerFactory.java
index 307712e..9dcbd8c 100644
--- a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerContainerFactory.java
+++ b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerContainerFactory.java
@@ -103,7 +103,7 @@
         return containers;
     }
 
-    private ContainerImpl createDockerContainer(ServiceConfig config) throws Exception {
+    ContainerImpl createDockerContainer(ServiceConfig config) throws Exception {
         List<String> command = new ArrayList<>();
         command.add("-d");
         command.add("-l");
@@ -152,7 +152,7 @@
     }
 
     @SuppressWarnings({ "rawtypes", "unchecked" })
-    private List<ContainerImpl> discoverContainers(ServiceConfig config) {
+    List<ContainerImpl> discoverContainers(ServiceConfig config) {
         List<ContainerImpl> res = new ArrayList<>();
         List<String> ids = getDockerIDs(config);
         if (ids.size() == 0)
@@ -211,6 +211,7 @@
     }
 
     @Override
+    @SuppressWarnings("rawtypes")
     public Set<String> listServices() throws Exception {
         Set<String> res = new HashSet<>();
         List<String> ids = docker.ps(SERVICE_NAME);
diff --git a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerController.java b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerController.java
index 94801b6..78b74b8 100644
--- a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerController.java
+++ b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/LocalDockerController.java
@@ -62,6 +62,9 @@
     }
 
     public String inspect(List<String> ids) {
+        if (ids.size() == 0)
+            return "[]";
+
         List<String> cmd = new ArrayList<>();
         cmd.add("docker");
         cmd.add("inspect");
diff --git a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/ServiceImpl.java b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/ServiceImpl.java
index 895d809..f852f00 100644
--- a/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/ServiceImpl.java
+++ b/containers-docker-local/src/main/java/org/apache/aries/containers/docker/local/impl/ServiceImpl.java
@@ -64,7 +64,11 @@
                     killContainer(containers.remove(0));
                 }
             } else {
-                // TODO implement scaling up
+                for (int i=curSize; i < count; i++) {
+                    ContainerImpl c = factory.createDockerContainer(config);
+                    c.setService(this);
+                    containers.add(c);
+                }
             }
         } catch (Exception e) {
             LocalDockerContainerFactory.LOG.error("Problem changing instance count of service {} to {}",
@@ -87,6 +91,10 @@
 
     @Override
     public void refresh() {
-        // TODO
+        containers.clear();
+        for (ContainerImpl c : factory.discoverContainers(config)) {
+            c.setService(this);
+            containers.add(c);
+        }
     }
 }