Set Gerrit canonical URL based on Docker hostname

When running Gerrit inside docker, the canonical web url needs
to be set to the external Docker IP/name, defined by the environment
variable $HOSTNAME.

Change-Id: Iddf40952f2655c2b11252aadf02cf0598252bcf1
diff --git a/docker/centos7/Makefile b/docker/centos7/Makefile
index bd77b49..ffa8589 100644
--- a/docker/centos7/Makefile
+++ b/docker/centos7/Makefile
@@ -35,7 +35,7 @@
 EXPOSE 29418 8080
 
 # Start Gerrit
-CMD /var/gerrit/bin/gerrit.sh start && tail -f /var/gerrit/logs/error_log
+CMD git config -f /var/gerrit/etc/gerrit.config gerrit.canonicalWebUrl http://$$HOSTNAME:8080/ && /var/gerrit/bin/gerrit.sh start && tail -f /var/gerrit/logs/error_log
 endef
 export DOCKERFILE
 
@@ -50,6 +50,6 @@
 	echo "$$DOCKERFILE" > Dockerfile
 
 run: image
-	docker run -d -p 8080:8080 -p 29418:29418 $(IMAGE):$(VERSION)
+	docker run -d --hostname $$HOSTNAME -p 8080:8080 -p 29418:29418 $(IMAGE):$(VERSION)
 
 .PHONY: clean prepare image
diff --git a/docker/ubuntu16.04/Makefile b/docker/ubuntu16.04/Makefile
index dacb4e8..b6187ae 100644
--- a/docker/ubuntu16.04/Makefile
+++ b/docker/ubuntu16.04/Makefile
@@ -36,7 +36,7 @@
 EXPOSE 29418 8080
 
 # Start Gerrit
-CMD /var/gerrit/bin/gerrit.sh start && tail -f /var/gerrit/logs/error_log
+CMD git config -f /var/gerrit/etc/gerrit.config gerrit.canonicalWebUrl http://$$HOSTNAME:8080/ && /var/gerrit/bin/gerrit.sh start && tail -f /var/gerrit/logs/error_log
 endef
 export DOCKERFILE
 
@@ -53,6 +53,6 @@
 	-mkdir -p docker_files
 
 run: image
-	docker run -d -p 8080:8080 -p 29418:29418 $(IMAGE):$(VERSION)
+	docker run -d --hostname $$HOSTNAME -p 8080:8080 -p 29418:29418 $(IMAGE):$(VERSION)
 
 .PHONY: clean prepare image