diff --git a/unit-files/discovery-u@.service b/unit-files/discovery-u@.service
index 66deca19bdb5c8bc7f6db2d40d478510ba432ecb..62b24e2fe0df9a2d5963c4c2f292b84e6e2daf97 100644
--- a/unit-files/discovery-u@.service
+++ b/unit-files/discovery-u@.service
@@ -11,10 +11,14 @@ BindsTo=universal@%i.service
 Type=oneshot
 RemainAfterExit=yes
 Environment=URL=%i
-ExecStart=/bin/bash -euxc ' \
-  sleep 3; \
-  container_name=`echo ${URL}_web_1 | sed "s/\.//g" | sed "s/-//g"`; \
-  ip=`docker inspect --format \'{{.NetworkSettings.IPAddress}}\' $container_name`; \
+ExecStart=/bin/bash -xc ' \
+  ip=""; \
+  while [ -z $ip ]; \
+  do \
+    container_name=`echo ${URL}_web_1 | sed "s/\.//g" | sed "s/-//g"`; \
+    ip=`docker inspect --format \'{{.NetworkSettings.IPAddress}}\' $container_name`; \
+    sleep 1; \
+  done; \
   etcdctl --peers 172.17.42.1:4001 set /services/web/%i \'{"ip":"\'$ip\'", "port":"80"}\';'
 ExecStop=-/usr/bin/etcdctl rm /services/web/%i