Я установил Gerrit в контейнер Docker вместе с его зависимостями Postgres и Apache. Последние два запускаются без проблем, но запускается Java, а затем генерируется следующее исключение:
[2020-06-18 17:52:22,474] [main] ERROR com.google.gerrit.pgm.Daemon : Unable to start daemon
com.google.inject.ProvisionException: Unable to provision, see the following errors:
1) Schema not yet initialized. Run init to initialize the schema:
$ java -jar gerrit.war init -d /var/gerrit
1 error
at com.google.gerrit.server.schema.NoteDbSchemaVersionCheck.start(NoteDbSchemaVersionCheck.java:50)
at com.google.gerrit.lifecycle.LifecycleManager.start(LifecycleManager.java:95)
at com.google.gerrit.pgm.Daemon.start(Daemon.java:348)
at com.google.gerrit.pgm.Daemon.run(Daemon.java:254)
at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:224)
at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:120)
at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:65)
at Main.main(Main.java:28)
Когда я запускаю init, как было предложено (в контейнере Gerrit), он предлагает мне внести изменения в файл gerrit.config, а затем выполняет переиндексирование. Затем, когда я пытаюсь перезапустить контейнер (через docker -compose), я получаю ту же самую ошибку. Вот мой gerrit.conf (отредактированный для конфиденциальности):
[gerrit]
basePath = git
canonicalWebUrl = http://host:8100/
serverId = 85d6f505-5412-4eef-9f26-e844e9efd258
[database]
type = postgresql
hostname = localhost
database = reviewdb
username = gerrit2
[index]
type = LUCENE
[auth]
type = HTTP
logoutUrl = http://aa:aa@host:8100/logout
httpHeader =
[sendemail]
smtpServer = localhost
smtpUser = gerrit2
[container]
javaOptions = "-Dflogger.backend_factory=com.google.common.flogger.backend.log4j.Log4jBackendFactory#getInstance"
javaOptions = "-Dflogger.logging_context=com.google.gerrit.server.logging.LoggingContext#getInstance"
user = root
javaHome = /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64/jre
javaOptions = -Djava.security.egd=file:/dev/./urandom
[httpd]
listenUrl = http://host:8100/
[cache]
directory = cache
[sshd]
listenAddress = *:29418
[user]
name = gerrit2
email = pmena@host