如何在Docker容器内的本地计算机上运行的MySQL服务器用于DropWizard应用程序?

伊桑·库拉纳(Ishaan Khurana):

我是Docker的新手,目前正努力将我的dropwizard应用程序容器化。每次我构建容器,运行它并检查日志时,都会收到MySQL连接失败错误,这在容器在虚拟机上运行时是有意义的,对于它来说,本地主机URL毫无意义。我想知道如何做才能使我的MySQL在docker容器中可访问。谢谢。这就是我的config.yml文件的样子。

  driverClass: com.mysql.cj.jdbc.Driver
  # the username
  user: root

  # the password
  password:

  # the JDBC URL
  url: jdbc:mysql://localhost:3306/locations?useLegacyDatetimeCode=false&serverTimezone=UTC

  # any properties specific to your JDBC driver:
  properties:
    charSet: UTF-8

  # the maximum amount of time to wait on an empty pool before throwing an exception
  maxWaitForConnection: 1s

  # the SQL query to run when validating a connection's liveness
  validationQuery: "/* MyService Health Check */ SELECT 1"

  # the timeout before a connection validation queries fail
  validationQueryTimeout: 3s

  # the minimum number of connections to keep open
  minSize: 8

  # the maximum number of connections to keep open
  maxSize: 32

  # whether or not idle connections should be validated
  checkConnectionWhileIdle: false

  # the amount of time to sleep between runs of the idle connection validation, abandoned cleaner and idle pool resizing
  evictionInterval: 10s

  # the minimum amount of time an connection must sit idle in the pool before it is eligible for eviction
  minIdleTime: 1 minute

  # Logging settings.
#logging:
#  level: INFO
#  loggers:
#    io.dropwizard: DEBUG
#    org.eclipse.jetty.servlets: DEBUG
#    org.hibernate.SQL: ALL
#    com.udemy.LocationsApplication:
#      level: ALL,
#      additive: false
#      appenders:
#        - type: conso
#          logFormat: "%red(CDR) [%magenta(%date)] [%thread] [%cyan(%logger{0})]: %message%n"
#  appenders:
#    - type: console
#      logFormat: "%highlight(%-5level) [%magenta(%date)] [%thread] [%cyan(%logger{0})]: %message%n" ```
纳克斯:

假设您有一个mysql容器公开了端口3306和dropwizard容器。

您可以为他们创建一个网络

docker network create <network_name>

并将其分配给码头工人

docker run .... --network <network_name>

这应该使机器人docker彼此见面

您可以看到使用的网络,docker network ls如果使用docker-compose它将自动生成网络。

您还可以使用host网络,这也使它们能够连接到计算机中的端口(如果您在其中之一中运行docker,则为虚拟机)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Shiny服务器在本地计算机上对R Shiny应用程序进行Docker化?

如何在不同计算机上运行的虚拟机上运行客户端服务器应用程序?

如何在客户端计算机上将 Windows 服务作为控制台应用程序运行

如何在本地计算机上运行Play应用程序并让其他人从Internet访问该应用程序

如何在Windows 7计算机上运行.Net Core Web应用程序?

如何在另一台计算机上运行包含本地SQL Server数据库的C#应用程序?

在本地计算机上运行或调试MVC应用程序时为空白页

无法使用本地计算机作为服务器在客户端运行桌面应用程序

如何连接到在本地计算机上的容器中运行的MySQL实例?

使应用程序在超高清计算机上运行

如何在本地计算机上运行php?

如何在本地计算机上运行appfacotry?

如何将android应用程序连接到本地计算机作为服务器

Docker Desktop如何在Windows计算机上运行linux容器

将Web应用程序从本地计算机部署到远程tomcat服务器

应用程序在本地计算机上运行正常,但在Pythonanywhere.com上却无法正常运行

Mac:如何从其他计算机远程访问在Docker容器中运行的服务器?

在Windows计算机上运行IDE,但在Linux计算机上测试/运行应用程序?

如何在Windows计算机上为Linux编译.NET Core应用程序

如何在Windows计算机上为Spark应用程序设置集群环境?

如何在Mac计算机上的Dock中添加应用程序快捷方式?

如何在其他计算机上使用KeePass应用程序?

如何在服务器计算机的Web API中验证WPF应用程序Azure令牌

在本地计算机上运行应用程序,并在远程显示器上显示GUI

如何在我的计算机上识别某个应用程序是snap,flatpak还是本机应用程序?

在单核计算机上群集node.js应用程序服务器时的任何好处

从Docker容器读取本地计算机上的文件

Postgresql服务器正在本地计算机上运行,但psql无法连接

如何在控制台应用程序中使用C#将文件从本地计算机上传到s3冰川的保管库?