mysql - 在运行 docker 容器时连接到本地数据库
问题描述
我正在从 docker 容器运行应用程序,并且在某些时候,我将 Sequel Pro 连接到我的本地数据库,但是自从重新安装 Sequel Pro 后,我没有运气连接回我的本地数据库。我在哪里可以找到用于此的 IP/端口?我尝试连接到 127.0.0.1 并尝试使用中列出的 IP 地址docker inspect (container name)
,但无济于事。
解决方案
如果您在容器内寻址localhost
(或127.0.0.1
),则指的localhost
是容器内部,而不是系统。
您可以使用docker 网络。如果您在同一网络中运行容器(手动添加或使用撰写文件),您可以像service name:port
在网络内部一样寻址。Ports 没有为此在外部发布(但如果您想从系统中恢复数据库,则很有用)。
另一种方法是在网络模式下运行您的容器host
。在这种情况下,您在 docker 守护进程的网络接口上运行并且可以使用localhost
. 但是你会失去一些孤立感。
推荐阅读
- c# - 时间:2019-01-10 标签:c#changeget implementation get
() 要得到() - python - 数据清洗:处理来自用户输入的大量不同格式
- java - spring boot项目中如何配置RestClientProxyFactoryBean
- python - 如何在运行时访问 pytest 测试运行的整体测试结果?
- java - Kotlin:修饰符“覆盖”不适用于“初始化程序”
- flutter - 有没有简单的方法来检查免费的内部或外部内存?
- javascript - 如何在 jQuery 中第二次按相同的键禁用该键?
- css - 在 Bootstrap 网格中心水平对齐堆叠的单选按钮
- python - 在 AWS 上运行 Celery
- python - Django Migrate 命令抛出 ORA-00955 错误