diff --git a/src/main/scala/servlet/AutoUpdateListener.scala b/src/main/scala/servlet/AutoUpdateListener.scala
index 51f8c2c5d..308dfcaac 100644
--- a/src/main/scala/servlet/AutoUpdateListener.scala
+++ b/src/main/scala/servlet/AutoUpdateListener.scala
@@ -112,6 +112,7 @@ class AutoUpdateListener extends org.h2.server.web.DbStarter {
private val logger = LoggerFactory.getLogger(classOf[AutoUpdateListener])
override def contextInitialized(event: ServletContextEvent): Unit = {
+ event.getServletContext.setInitParameter("db.url", s"jdbc:h2:${Directory.DatabaseHome}")
super.contextInitialized(event)
logger.debug("H2 started")
diff --git a/src/main/scala/util/Directory.scala b/src/main/scala/util/Directory.scala
index 754d73728..73cee55aa 100644
--- a/src/main/scala/util/Directory.scala
+++ b/src/main/scala/util/Directory.scala
@@ -7,11 +7,16 @@ import java.io.File
*/
object Directory {
- val GitBucketHome = new File(System.getProperty("user.home"), "gitbucket").getAbsolutePath
+ val GitBucketHome = (scala.util.Properties.envOrNone("GITBUCKET_HOME") match {
+ case Some(env) => new File(env)
+ case None => new File(System.getProperty("user.home"), "gitbucket")
+ }).getAbsolutePath
val GitBucketConf = new File(GitBucketHome, "gitbucket.conf")
val RepositoryHome = s"${GitBucketHome}/repositories"
+
+ val DatabaseHome = s"${GitBucketHome}/data"
/**
* Repository names of the specified user.
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
index 901034601..77d4c18f2 100644
--- a/src/main/webapp/WEB-INF/web.xml
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -55,11 +55,6 @@
servlet.AutoUpdateListener
-
- db.url
- jdbc:h2:~/gitbucket/data
-
-
db.user
sa