C-Otto / lnd-manageJ

MIT License
52 stars 12 forks source link

Bug: ./start.sh fails to start service, hangs on db connect (docker and MacOS) #90

Closed zapomatic closed 7 months ago

zapomatic commented 7 months ago

Describe the bug

building and starting the docker container leads to the following output:

 * Starting PostgreSQL 14 database server
   ...done.
could not change directory to "/home/gradle/lnd-manageJ": Permission denied
CREATE ROLE
could not change directory to "/home/gradle/lnd-manageJ": Permission denied
2024-02-13 00:34:09,875 INFO  de.cotto.lndmanagej.Application: Starting Application using Java 17.0.10 with PID 43 (/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar started by root in /home/gradle/lnd-manageJ)
2024-02-13 00:34:09,876 INFO  de.cotto.lndmanagej.Application: The following 1 profile is active: "default"
2024-02-13 00:34:10,908 INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate: Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2024-02-13 00:34:11,093 INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate: Finished Spring Data repository scanning in 177 ms. Found 10 JPA repository interfaces.
2024-02-13 00:34:11,389 INFO  org.springframework.cloud.context.scope.GenericScope: BeanFactory id=13a43cce-ea5f-34c5-a63b-569e5c8ad06a
2024-02-13 00:34:11,512 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'de.cotto.lndmanagej.transactions.download.BlockcypherClient' of type [org.springframework.cloud.openfeign.FeignClientFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:11,513 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'de.cotto.lndmanagej.transactions.download.BitapsClient' of type [org.springframework.cloud.openfeign.FeignClientFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:11,719 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'metricsConfiguration' of type [de.cotto.lndmanagej.MetricsConfiguration$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:11,725 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'com.ryantenney.metrics.spring.config.annotation.DelegatingMetricsConfiguration' of type [com.ryantenney.metrics.spring.config.annotation.DelegatingMetricsConfiguration$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:11,744 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'getMetricRegistry' of type [com.codahale.metrics.MetricRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:11,771 INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'getHealthCheckRegistry' of type [com.codahale.metrics.health.HealthCheckRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2024-02-13 00:34:12,256 INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat initialized with port(s): 8081 (http)
2024-02-13 00:34:12,265 INFO  org.apache.catalina.core.StandardService: Starting service [Tomcat]
2024-02-13 00:34:12,265 INFO  org.apache.catalina.core.StandardEngine: Starting Servlet engine: [Apache Tomcat/10.1.13]
2024-02-13 00:34:12,340 INFO  org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]: Initializing Spring embedded WebApplicationContext
2024-02-13 00:34:12,341 INFO  org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext: Root WebApplicationContext: initialization completed in 2406 ms
2024-02-13 00:34:12,516 INFO  org.flywaydb.core.internal.license.VersionPrinter: Flyway Community Edition 9.16.3 by Redgate
2024-02-13 00:34:12,516 INFO  org.flywaydb.core.internal.license.VersionPrinter: See release notes here: https://rd.gt/416ObMi
2024-02-13 00:34:12,516 INFO  org.flywaydb.core.internal.license.VersionPrinter:
2024-02-13 00:34:12,521 INFO  org.flywaydb.core.internal.resource.ResourceNameValidator: 11 SQL migrations were detected but not run because they did not follow the filename convention.
2024-02-13 00:34:12,521 INFO  org.flywaydb.core.internal.resource.ResourceNameValidator: If this is in error, set 'validateMigrationNaming' to true to fail fast and see a list of the invalid file names.
2024-02-13 00:34:12,522 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Starting...
2024-02-13 00:34:12,764 INFO  com.zaxxer.hikari.pool.HikariPool: HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@6cf31447
2024-02-13 00:34:12,766 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Start completed.
2024-02-13 00:34:12,777 INFO  org.flywaydb.core.internal.database.base.BaseDatabaseType: Database: jdbc:postgresql://localhost:5432/lndmanagej (PostgreSQL 14.10)
2024-02-13 00:34:12,805 INFO  org.flywaydb.core.internal.schemahistory.JdbcTableSchemaHistory: Schema history table "public"."flyway_schema_history" does not exist yet
2024-02-13 00:34:12,808 INFO  org.flywaydb.core.internal.command.DbValidate: Successfully validated 14 migrations (execution time 00:00.015s)
2024-02-13 00:34:12,819 INFO  org.flywaydb.core.internal.schemahistory.JdbcTableSchemaHistory: Creating Schema History table "public"."flyway_schema_history" ...
2024-02-13 00:34:12,883 INFO  org.flywaydb.core.internal.command.DbMigrate: Current version of schema "public": << Empty Schema >>
2024-02-13 00:34:12,903 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.0 - base"
2024-02-13 00:34:12,910 WARN  org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor: DB: relation "flyway_schema_history" already exists, skipping (SQL State: 42P07 - Error Code: 0)
2024-02-13 00:34:12,912 WARN  org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor: DB: relation "flyway_schema_history_s_idx" already exists, skipping (SQL State: 42P07 - Error Code: 0)

The app then hangs at this point.

To Reproduce

export LND_HOME=/home/user/.lnd
docker run --rm --network host --name lndmj -v $LND_HOME:/root/.lnd lnd-managej
zapomatic commented 7 months ago

Getting the same result outside of docker, but using the docker build info to construct instructions for running on MacOS:

This is the setup from soup to nuts:

# Install Java 17
brew install openjdk@17
sudo ln -sfn /usr/local/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
echo 'export PATH="/usr/local/opt/openjdk/bin:$PATH"' >> ~/.zshrc
echo 'export CPPFLAGS="-I/usr/local/opt/openjdk@17/include"' >> ~/.zshrc

# Install & Configure PostgreSQL
brew install postgresql
brew services start postgresql@15
echo 'export PATH="/usr/local/opt/postgresql@15/bin:$PATH"' >> ~/.zshrc
. ~/.zshrc
createdb $(whoami)
psql -c "CREATE USER bitcoin WITH PASSWORD 'unset'"
createdb lndmanagej -O bitcoin
echo "jdbc:postgresql://localhost:5432/lndmanagej" >> ~/.pgpass
chmod 600 ~/.pgpass
echo "local   lndmanagej      bitcoin                                 trust" >> /usr/local/var/postgresql@15/pga_hba.conf
brew services restart postgresql@15

# Configure lnd-manageJ
mkdir -p ~/config
echo "[lnd]" >> ~/.config/lnd-manageJ.conf
echo "host=localhost" >> ~/.config/lnd-manageJ.conf
echo "macaroon_file=~/.lnd/data/chain/bitcoin/testnet/admin.macaroon" >> ~/.config/lnd-manageJ.conf

# Start
./start.sh

And the result as above.

Am I not configuring psql access correctly?

C-Otto commented 7 months ago

Might be related to https://github.com/flyway/flyway/issues/3682

zapomatic commented 7 months ago

could be... I tried updating gradle deps to

runtimeOnly("org.flywaydb:flyway-core:9.19.4")

and added:

spring.flyway.postgresql.transactional.lock = false

to application.properties.

Got the same result. Java/Gradle is not my wheelhouse so I may not be setting it up right.

C-Otto commented 7 months ago

It's a mess and I don't like my fix, but it's a fix.

zapomatic commented 7 months ago

just to be sure it's not something on my machine, I'm sticking with docker:

# update latest
git fetch c-otto
git merge c-otto/main
# totally clear docker cache
docker system prune -a
# new build
docker build -t lnd-managej .
# run
docker run --rm --network host --name lndmj -v ~/.lnd:/root/.lnd lnd-managej

docker container still dies with

 * Starting PostgreSQL 14 database server
   ...done.
could not change directory to "/home/gradle/lnd-manageJ": Permission denied
CREATE ROLE
could not change directory to "/home/gradle/lnd-manageJ": Permission denied
2024-02-13 19:19:47,873 INFO  de.cotto.lndmanagej.Application: Starting Application using Java 17.0.10 with PID 46 (/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar started by root in /home/gradle/lnd-manageJ)
2024-02-13 19:19:47,882 INFO  de.cotto.lndmanagej.Application: The following 1 profile is active: "default"
2024-02-13 19:19:48,840 INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate: Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2024-02-13 19:19:48,976 INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate: Finished Spring Data repository scanning in 131 ms. Found 10 JPA repository interfaces.
2024-02-13 19:19:49,528 INFO  org.springframework.cloud.context.scope.GenericScope: BeanFactory id=b33f8872-01f4-3e92-b9ed-3bca67402902
2024-02-13 19:19:49,910 WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'metricsConfiguration' of type [de.cotto.lndmanagej.MetricsConfiguration$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [exceptionMeteredAnnotationBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-02-13 19:19:49,915 WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'com.ryantenney.metrics.spring.config.annotation.DelegatingMetricsConfiguration' of type [com.ryantenney.metrics.spring.config.annotation.DelegatingMetricsConfiguration$$SpringCGLIB$$0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). The currently created BeanPostProcessor [exceptionMeteredAnnotationBeanPostProcessor] is declared through a non-static factory method on that class; consider declaring it as static instead.
2024-02-13 19:19:49,926 WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'getMetricRegistry' of type [com.codahale.metrics.MetricRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [exceptionMeteredAnnotationBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-02-13 19:19:49,960 WARN  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker: Bean 'getHealthCheckRegistry' of type [com.codahale.metrics.health.HealthCheckRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [healthCheckBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2024-02-13 19:19:50,361 INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat initialized with port 8081 (http)
2024-02-13 19:19:50,387 INFO  org.apache.catalina.core.StandardService: Starting service [Tomcat]
2024-02-13 19:19:50,387 INFO  org.apache.catalina.core.StandardEngine: Starting Servlet engine: [Apache Tomcat/10.1.18]
2024-02-13 19:19:50,431 INFO  org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/]: Initializing Spring embedded WebApplicationContext
2024-02-13 19:19:50,431 INFO  org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext: Root WebApplicationContext: initialization completed in 2461 ms
2024-02-13 19:19:50,591 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Starting...
2024-02-13 19:19:50,867 INFO  com.zaxxer.hikari.pool.HikariPool: HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@4bc21e34
2024-02-13 19:19:50,869 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Start completed.
2024-02-13 19:19:51,009 INFO  org.flywaydb.core.internal.license.VersionPrinter: Flyway Community Edition 9.22.3 by Redgate
2024-02-13 19:19:51,009 INFO  org.flywaydb.core.internal.license.VersionPrinter: See release notes here: https://rd.gt/416ObMi
2024-02-13 19:19:51,009 INFO  org.flywaydb.core.internal.license.VersionPrinter:
2024-02-13 19:19:51,015 INFO  org.flywaydb.core.internal.resource.ResourceNameValidator: 11 SQL migrations were detected but not run because they did not follow the filename convention.
2024-02-13 19:19:51,016 INFO  org.flywaydb.core.internal.resource.ResourceNameValidator: Set 'validateMigrationNaming' to true to fail fast and see a list of the invalid file names.
2024-02-13 19:19:51,022 INFO  org.flywaydb.core.FlywayExecutor: Database: jdbc:postgresql://localhost:5432/lndmanagej (PostgreSQL 14.10)
2024-02-13 19:19:51,068 INFO  org.flywaydb.core.internal.schemahistory.JdbcTableSchemaHistory: Schema history table "public"."flyway_schema_history" does not exist yet
2024-02-13 19:19:51,072 INFO  org.flywaydb.core.internal.command.DbValidate: Successfully validated 14 migrations (execution time 00:00.022s)
2024-02-13 19:19:51,090 INFO  org.flywaydb.core.internal.schemahistory.JdbcTableSchemaHistory: Creating Schema History table "public"."flyway_schema_history" ...
2024-02-13 19:19:51,129 INFO  org.flywaydb.core.internal.command.DbMigrate: Current version of schema "public": << Empty Schema >>
2024-02-13 19:19:51,145 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.0 - base"
2024-02-13 19:19:51,150 WARN  org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor: DB: relation "flyway_schema_history" already exists, skipping (SQL State: 42P07 - Error Code: 0)
2024-02-13 19:19:51,153 WARN  org.flywaydb.core.internal.sqlscript.DefaultSqlScriptExecutor: DB: relation "flyway_schema_history_s_idx" already exists, skipping (SQL State: 42P07 - Error Code: 0)
2024-02-13 19:19:51,237 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.1 - remove received via from settled invoices"
2024-02-13 19:19:51,254 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.2 - reset payments"
2024-02-13 19:19:51,270 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.3 - rename column"
2024-02-13 19:19:51,287 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.4 - add received via"
2024-02-13 19:19:51,310 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.5 - add settled payments index"
2024-02-13 19:19:51,326 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.6 - reset settled payments index"
2024-02-13 19:19:51,342 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.7 - add settled invoices index"
2024-02-13 19:19:51,359 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.8 - add hop channel id index"
2024-02-13 19:19:51,369 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.9 - add hop channel id and hop order index"
2024-02-13 19:19:51,381 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.10 - remove intermediate hops"
2024-02-13 19:19:51,390 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.11 - remove hops order"
2024-02-13 19:19:51,399 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.12 - add primary key"
2024-02-13 19:19:51,404 INFO  org.flywaydb.core.internal.command.DbMigrate: Migrating schema "public" to version "1.0.13 - cleanup"
2024-02-13 19:19:51,409 INFO  org.flywaydb.core.internal.command.DbMigrate: Successfully applied 14 migrations to schema "public", now at version v1.0.13 (execution time 00:00.143s)
2024-02-13 19:19:51,513 INFO  org.hibernate.jpa.internal.util.LogHelper: HHH000204: Processing PersistenceUnitInfo [name: default]
2024-02-13 19:19:51,590 INFO  org.hibernate.Version: HHH000412: Hibernate ORM core version 6.4.1.Final
2024-02-13 19:19:51,627 INFO  org.hibernate.cache.internal.RegionFactoryInitiator: HHH000026: Second-level cache disabled
2024-02-13 19:19:51,869 INFO  org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo: No LoadTimeWeaver setup: ignoring JPA class transformer
2024-02-13 19:19:51,915 WARN  org.hibernate.orm.deprecation: HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default)
2024-02-13 19:19:52,731 INFO  org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator: HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration)
2024-02-13 19:19:52,791 INFO  org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean: Initialized JPA EntityManagerFactory for persistence unit 'default'
2024-02-13 19:19:53,071 WARN  org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'uiDataServiceImpl' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/ui-plain.jar!/de/cotto/lndmanagej/ui/UiDataServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'channelController' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/web-plain.jar!/de/cotto/lndmanagej/controller/ChannelController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'channelService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/backend-plain.jar!/de/cotto/lndmanagej/service/ChannelService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcChannels' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcChannels.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
2024-02-13 19:19:53,071 INFO  org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean: Closing JPA EntityManagerFactory for persistence unit 'default'
2024-02-13 19:19:53,073 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Shutdown initiated...
2024-02-13 19:19:53,083 INFO  com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Shutdown completed.
2024-02-13 19:19:53,086 INFO  org.apache.catalina.core.StandardService: Stopping service [Tomcat]
2024-02-13 19:19:53,099 INFO  org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLogger:

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
2024-02-13 19:19:53,119 ERROR org.springframework.boot.SpringApplication: Application run failedjava.nio.file.NoSuchFileException: /root/.lnd/data/chain/bitcoin/testnet/admin.macaroon
    at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92) ~[na:na]
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) ~[na:na]
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[na:na]
    at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:218) ~[na:na]
    at java.base/java.nio.file.Files.newByteChannel(Files.java:380) ~[na:na]
    at java.base/java.nio.file.Files.newByteChannel(Files.java:432) ~[na:na]
    at java.base/java.nio.file.Files.readAllBytes(Files.java:3288) ~[na:na]
    at de.cotto.lndmanagej.grpc.MacaroonCallCredential.<init>(MacaroonCallCredential.java:17) ~[grpc-client-plain.jar!/:na]
    at de.cotto.lndmanagej.grpc.StubCreator.createLightningStub(StubCreator.java:75) ~[grpc-client-plain.jar!/:na]
    at de.cotto.lndmanagej.grpc.StubCreator.<init>(StubCreator.java:36) ~[grpc-client-plain.jar!/:na]
    at de.cotto.lndmanagej.grpc.GrpcBase.getStubCreator(GrpcBase.java:37) ~[grpc-adapter-plain.jar!/:na]
    at de.cotto.lndmanagej.grpc.GrpcBase.<init>(GrpcBase.java:32) ~[grpc-adapter-plain.jar!/:na]
    at de.cotto.lndmanagej.grpc.GrpcService.<init>(GrpcService.java:92) ~[grpc-adapter-plain.jar!/:na]
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[na:na]
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[na:na]
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:210) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 84 common frames omitted
Wrapped by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:223) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:111) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:315) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 82 common frames omitted
Wrapped by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:318) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:306) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 68 common frames omitted
Wrapped by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'grpcChannels' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcChannels.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:798) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 54 common frames omitted
Wrapped by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'channelService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/backend-plain.jar!/de/cotto/lndmanagej/service/ChannelService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcChannels' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcChannels.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:798) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 40 common frames omitted
Wrapped by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'channelController' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/web-plain.jar!/de/cotto/lndmanagej/controller/ChannelController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'channelService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/backend-plain.jar!/de/cotto/lndmanagej/service/ChannelService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcChannels' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcChannels.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:798) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) ~[spring-beans-6.1.3.jar!/:6.1.3]
    ... 26 common frames omitted
Wrapped by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'uiDataServiceImpl' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/ui-plain.jar!/de/cotto/lndmanagej/ui/UiDataServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'channelController' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/web-plain.jar!/de/cotto/lndmanagej/controller/ChannelController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'channelService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/backend-plain.jar!/de/cotto/lndmanagej/service/ChannelService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcChannels' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcChannels.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'grpcService' defined in URL [jar:nested:/home/gradle/lnd-manageJ/application/build/libs/application-boot.jar/!BOOT-INF/lib/grpc-adapter-plain.jar!/de/cotto/lndmanagej/grpc/GrpcService.class]: Failed to instantiate [de.cotto.lndmanagej.grpc.GrpcService]: Constructor threw exception
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:798) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:975) ~[spring-beans-6.1.3.jar!/:6.1.3]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:959) ~[spring-context-6.1.3.jar!/:6.1.3]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624) ~[spring-context-6.1.3.jar!/:6.1.3]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:334) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1354) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343) ~[spring-boot-3.2.2.jar!/:3.2.2]
    at de.cotto.lndmanagej.Application.main(Application.java:21) ~[!/:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
    at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:91) ~[application-boot.jar:na]
    at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:53) ~[application-boot.jar:na]
    at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58) ~[application-boot.jar:na]
C-Otto commented 7 months ago

Does /root/.lnd/data/chain/bitcoin/testnet/admin.macaroon (in Docker) or ~/.lnd/data/chain/bitcoin/testnet/admin.macaroon (on your disk) exist?

zapomatic commented 7 months ago

ah! now I see that error. My bad 🤦

However, now that I have it built and running, it gets to:

2024-02-13 20:38:59,871 INFO  org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat started on port 8081 (http) with context path ''
2024-02-13 20:38:59,914 INFO  de.cotto.lndmanagej.Application: Started Application in 12.927 seconds (process running for 15.842)

and hangs there. Nothing reachable on :8081

It is connected to LND per the LND logs:

[WRN] RPCP: A new gRPC middleware with the name 'lnd-manageJ' was registered  with custom_macaroon_caveat='', read_only=true. Make sure you trust the middleware author since that code will be able to intercept and possibly modify any gRPC messages sent/received to/from a client that has a macaroon with that custom caveat.

After 10 minutes, I start seeing metrics logs so it's clearly running but something is off with the port mapping:

2024-02-13 20:48:50,896 INFO  Metrics: type=TIMER, name=de.cotto.lndmanagej.controller.ChannelController.getBalance, count=0, min=0.0, max=0.0, mean=0.0, stddev=0.0, p50=0.0, p75=0.0, p95=0.0, p98=0.0, p99=0.0, p999=0.0, m1_rate=0.0, m5_rate=0.0, m15_rate=0.0, mean_rate=0.0, rate_unit=events/second, duration_unit=milliseconds
... etc

stopping the docker container exits from LND:

2024-02-13 21:00:00.223 [ERR] RPCP: Received an error: rpc error: code = Canceled desc = context canceled, shutting down
2024-02-13 21:00:00.224 [ERR] RPCS: [/lnrpc.Lightning/RegisterRPCMiddleware]: rpc error: code = Canceled desc = context canceled

running like so:

docker run --rm --network host --name lndmj -v ~/.config:/root/.config -v ~/.lnd:/root/.lnd lnd-managej
C-Otto commented 7 months ago

Could you open an issue? Right know I don't know what's wrong, the override should make the Java process listen on all interfaces, and the docker "EXPOSE" config should somehow forward the port.

zapomatic commented 7 months ago

done: https://github.com/C-Otto/lnd-manageJ/issues/91

I have confirmed that now it is working outside of docker :)