spring - H2 控制台不适用于 Docker(远程连接 ('webAllowOthers' 被禁用)

标签 spring docker docker-compose dockerfile h2

我有一个 api 应用程序,它在端口 8080 上使用 h2 db 运行,当我从 IDE 运行该应用程序时,h2-console 运行良好。
我已经使用 dockerfile 和 docker-compose.yml 对项目进行了 dockerized,该项目运行没有问题,除了当我从 docker 运行项目时无法访问 h2-console 之外,一切似乎都很好。
收到错误消息:“抱歉,此服务器上禁用了远程连接 ('webAllowOthers')。”
我检查了一些解决方案并应用

spring.h2.console.settings.web-allow-others=true
到 application-DOCKER.properties 和 application.properties 文件,但当我在 docker 上运行项目时仍然看不到 h2 控制台。
我该如何解决这个问题?

最佳答案

我有同样的问题。
我找到了这个 answer在研究了这个问题之后。
在 Dockerfile 中启动 jar 之前,您可以通过提供以下参数来启动它。 ("-web -webAllowOthers -tcp -tcpAllowOthers -browser")
我的 Dockerfile;

FROM openjdk:8-jdk-alpine
ADD target/*.jar app.jar
ENTRYPOINT ["java", "-jar", "/app.jar", "-web -webAllowOthers -tcp -tcpAllowOthers -browser"]
EXPOSE 8080
这样,我希望不会有问题。

关于spring - H2 控制台不适用于 Docker(远程连接 ('webAllowOthers' 被禁用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63164991/

相关文章:

java - 未找到当前线程的 session (Spring 3.1.X 和 Hibernate 4)

java - Spring 启动测试 : execute different sql scripts in tests depending on the active profile?

docker - 如何在Dockerfile中设置账户密码?

memory - docker能否按需在容器间共享内存和CPU?

docker - 如何完全重建Docker容器

spring-boot - zipkin2.reporter. 在 docker 中使用 Zipkin 和 kafka 时找不到 Sender bean

java - Spring Security 3.2、CSRF 和多部分请求

java - 将 Xml 请求转换为 Spring Boot 对象

postgresql - 无法连接到 postgres(用户密码验证失败 - docker)

docker - Elasticsearch 密码工具总是返回 "setting already set"错误