如何将MySQL从主机连接到Docker?

时间:2019-11-21 11:03:00

标签: mysql amazon-web-services docker

我是docker容器化的新手,所以我为我的应用程序创建了一个自定义映像,现在我想将主机中的MySQL数据访问到docker中,我进行了所有应用程序配置,但是我遇到了通讯异常,这意味着docker是无法与MySQL通信。

使用了以下Dockerfile

FROM ubuntu 
RUN ["apt-get", "update"]
RUN ["apt-get", "install", "-y", "vim","curl","jq","apt-utils"]
ENV PATH $PATH:/opt/java/bin 
ENV PATH $PATH:/opt/confluent/bin
ADD confluent-5.2.1 /opt/confluent 
RUN mkdir java 
ADD jdk1.8.0_221 /opt/java
CMD ["/bin/bash","-c","confluent start schema-registry && ./opt/confluent/bin/connect-standalone ./opt/confluent/etc/schema-registry/connect-avro-standalone.properties ./opt/confluent/etc/kafka-connect-jdbc/source-quickstart-sqlite.properties","-n"] 

1 个答案:

答案 0 :(得分:0)

我理解您这样的问题: 您的应用程序在docker容器中运行。 您的mysql服务器在主机系统上运行。 您希望您的应用程序连接到该mysql服务器,但不知道如何。

当您使用mac或win作为主机系统时,可以将docker.host.internal用作mysql-server-address。

当您不使用它时,您需要手动查找IP。我通常会确定当前的容器地址,并将最后一个数字更改为.1,因为这始终对我有用。

在以下问题中,有更多方法可以执行此操作: https://github.com/docker/for-linux/issues/264

希望这会有所帮助