gpt4 book ai didi

docker - docker 运行 jhipster 应用程序镜像时出现 jdbc4.CommunicationsException

转载 作者:行者123 更新时间:2023-12-02 20:47:29 27 4
gpt4 key购买 nike

我的 jhipster 后端应用程序使用 mysql 和 elasticsearch,我使用“./mvnw package -Pprod dockerfile:build -DskipTests”成功构建了一个 docker 镜像,然后我登录并将镜像推送到私有(private)注册表,然后在生产 Centos 7 ,我登录该注册表并成功提取图像。
然后我用 sudo 发出命令“Docker run iamgeid”,并出现以下异常:

2018-04-17 15:28:42.613  INFO 6 --- [           main] com.james.app.HdBackApp                  : The following profiles are active: prod
2018-04-17 15:28:50.061 INFO 6 --- [ main] com.james.app.config.WebConfigurer : Web application configuration, using profiles: prod
2018-04-17 15:28:50.072 INFO 6 --- [ main] com.james.app.config.WebConfigurer : Web application fully configured
2018-04-17 15:28:52.201 ERROR 6 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

在官网: https://www.jhipster.tech/docker-compose/ ,我注意到命令:
docker-compose -f src/main/docker/app.yml up

但是在生产中,没有这样的文件,我的问题是(就我而言):
1. 是否有某个命令供所有人运行后端,包括自动拉取依赖项,如 mysql、elasticsearch 等
2.如果没有这样的命令,运行应用程序的详细方法是什么,注意:我在构建镜像之前已经在docker文件夹下的文件(如app.yml,mysql.yml等)中设置了正确的参数。

谢谢并恭祝安康!

最佳答案

您的错误意味着您的应用程序找不到 MySQL 数据库。

在生产中,如果你只有 Docker,没有 Docker Compose,你需要手动:

  • 在特定的 Docker 网络中启动您的 MySQL 容器,使用适当的环境变量,以创建用户和数据库
  • 在同一网络中启动您的 Elasticsearch 容器
  • 在同一个网络中启动您的应用程序容器,使用所有特定的 Spring 配置,与 MySQL 和 Elasticsearch 相关

  • 会很大 docker run...命令。

    所以,最好也有 Docker-Compose,这样你就可以在这个 app.yml 文件中拥有所有这些默认配置。
    只需将 app.yml、mysql.yml 和 elasticsearch.yml 放入您的生产环境中。不要忘记自定义它们,因为我们提供了基本配置来帮助用户入门。

    您也可以尝试使用 docker-compose 子生成器,使用 jhipster docker-compose .对于更高级的使用,请尝试 Rancher 或 Kubernetes。

    关于docker - docker 运行 jhipster 应用程序镜像时出现 jdbc4.CommunicationsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49882300/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com