当前位置: 首页 > 知识库问答 >
问题:

将docker MySql连接到localhost MySql

仲孙逸明
2023-03-14

我使用了以下命令进行端口映射

sudo docker run -d -p 3306:33060 --name App1 APP/framework:app

其中3306端口属于本地主机MySQL,33060是进入docker容器的端口,因此docker中的3306:33060之间正在进行通信。我的问题如下:

sudo docker run -d -p 3306:33060 --name App1 APP/framework:app fc1ffe98b2f2e6299a3070be8296d8b530ef4bdb3bd4cfd79d28ffc535a361c1

docker:守护进程的错误响应:驱动程序未能在endpointApp1上编程外部连接(30EC933973ACF63A48EF9A20B0027AF18BD23E1F36CF852E3758EAA1F843):启动userland代理时出错:侦听tcp 0.0.0.0:3306:绑定:地址已在使用。

我不希望docker容器中的mysql创建图像。只需打开随机端口,将3306和主机ip映射到docker中的端口通信,即33060

有人能提出任何解决这个问题的方法吗?谢谢你。

共有2个答案

骆利
2023-03-14

如果您想从docker容器访问主机中的端口3306,您可以使用

sudo docker run-d--net host--name App1 APP/框架:app

您的容器将共享主机的网络,这意味着您可以在容器内执行localhost:3306,容器上的“localhost”与主机上的“localhost”完全相同。

郁博学
2023-03-14

来自docker留档的一些示例,冒号之前是容器端口,冒号之后是容器主机端口。

-p 8080:80将容器中的TCP端口80映射到Docker主机上的端口8080。

-p192.168.1.100:8080: 80
将容器中的TCP端口80映射到Docker主机上的端口8080,以连接到主机IP192.168.1.100。

-p 8080:80/udp将容器中的udp端口80映射到Docker主机上的端口8080。

-p 8080:80/tcp-p 8080:80/udp将容器中的tcp端口80映射到Docker主机上的tcp端口8080,并将容器中的udp端口80映射到Docker主机上的udp端口8080。

更多信息,https://docs.docker.com/config/containers/container-networking/

 类似资料:
  • 问题内容: 我需要使用angular + bootstrap创建一个带有日期和时间的输入字段。我发现这个日期时间选择器看起来确实很需要我- 日期和时间在一个字段中,并且阻止了用户错误的版本。我写了一条指令,启动了datepickers,但是它改变了视图,并且模型没有改变……我也尝试了onSelect,但是也没有任何反应 js 如何解决?建立联系? 问题答案: 因此,问题是: 改变每在元件; 从元素

  • 问题内容: 如何使用SQLAlchemy连接到MS Access?在他们的网站上,它说连接字符串是access + pyodbc。这是否意味着我需要连接pyodbc?由于我是新手,请保持温柔。 问题答案: 从理论上讲,这将通过create_engine(“ access:/// some_odbc_dsn”)进行,但是自从SQLAlchemy 0.5以来,Access后端就一直没有使用过,并且尚不

  • 我需要让一个AsyncIO富函数基于最新的一组规则执行调用。对于像map这样的操作,我能够通过以下博客文章处理一个具有丰富功能的BroadcastConnectedStream:https://flink.apache.org/2019/06/26/broadcast-state.html 但是,创建异步IO函数需要数据流作为输入,而BroadcastConnectedStream不是(https

  • 我正在调试我的网络应用程序,以找出我的一个请求中的网络错误。由于错误发生在库中,我宁愿使用Charles代理,而不是使用命令行。 我的问题是连接是由https完成的,它是不可见的,因为REPL没有通过代理。我试图将-Dhttp.proxy主机和-Dhttp.proxy端口作为参数添加到运行/调试配置中,但没有成功。 其他应用程序正在通过代理正确运行。 我错过了什么选择?

  • 我是nifi的新手,我想将SQL server数据库连接到nifi,并用处理器创建数据流。我怎样才能做到这一点,有没有人能帮我弄清楚这一点。 事先谢谢山姆

  • 我正在尝试将Azure与Android Studio连接起来。我已经按照关于Azure的教程,创建了一个移动服务。然后它给了我一些代码添加到我的应用程序,以便他们连接。但是,代码抛出了一个我无法理解的异常。我从头到脚在网上搜了一遍,也找不到答案。我认为这与依赖项或库的导入方式有关(通过将jar文件粘贴到libs文件夹中并添加依赖项)。 引发异常的代码(由Azure提供):

  • 我正在尝试将 kafka 与 windows 上的 mysql 连接起来。我没有使用汇合。我的 kafka 版本是 2.12 我已经启动了动物园管理员、Kafka、生产者和消费者,这一切都很好用。 我的MysQL版本是8.0.15 我已经在libs文件夹中复制了这3个jar文件 我的源代码quickstart mysql。属性文件代码为 当我运行命令时 我在控制台上收到此错误 请帮助我。 我也试过

  • 问题内容: 我已经在RHEL7上安装了ES 7.5和Kibana 7.5,但是在启动Kibana并检查UI后,我看到了错误,“ Kibana服务器尚未准备好。” 检查Kibana日志,我发现它没有正确连接到ES。任何帮助表示赞赏! 这是 journalctl –unit kibana 的输出: Elasticsearch.yml Kibana.yml 另外,当我运行 ss -tunlp | gre