千家信息网

Docker内怎么访问本机

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章给大家分享的是有关Docker内怎么访问本机的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。QuestionDocker内需要访问本机的数据库,如何访问。使用127.
千家信息网最后更新 2025年12月03日Docker内怎么访问本机

这篇文章给大家分享的是有关Docker内怎么访问本机的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Question

Docker内需要访问本机的数据库,如何访问。使用127.0.0.1肯定是不行的,因为这个在Docker容器里面指的是容器本身。所以,需要走别动渠道进行解决。

Solution

下面几种办法,根据操作系统的类型,选取其一即可。

DockerFile:

RUN /sbin/ip route|awk '/default/ { print $3,"\tdockerhost" }' >> /etc/hosts

RunTime:

(may not use) docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print $3}'` [my container](useful) docker run --add-host=dockerhost:`docker network inspect --format='{{range .IPAM.Config}}{{.Gateway}}{{end}}' bridge` [IMAGE]

Docker for Mac (17.12+):

docker.for.mac.host.internalMONGO_SERVER=docker.for.mac.host.internal# docker-compose.ymlversion: '3'services: api:  build: ./api  volumes:   - ./api:/usr/src/app:ro  ports:   - "8000"  environment:   - MONGO_SERVER  command: /usr/local/bin/gunicorn -c /usr/src/app/gunicorn_config.py -w 1 -b :8000 wsgi

Linux

# Solution 1/sbin/ip route|awk '/default/ { print $3 }'docker run --add-host dockerhost:`/sbin/ip route|awk '/default/ { print $3}'` [my container]# Solution 2-e "DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')"

Principle

想知道原理,需要了解计算机网络的模型和docker实现的模型。docker内部实际上实现了一个虚拟网桥docker0,需要通过网桥找到外部宿主机的在网桥的虚拟地址,也就是docker.for.mac.host.internal,就可以实现容器内访问外部宿主机。感兴趣的话可以了解下Docker的网络原理、计算机网络原理和docker compose等内容。

Reference

[1].(stackoverflow)insert-docker-parent-host-ip-into-containers-hosts-file

[2].(stackoverflow)how-to-get-the-ip-address-of-the-docker-host-from-inside-a-docker-container

感谢各位的阅读!关于"Docker内怎么访问本机"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

本机 内容 原理 容器 网桥 宿主 宿主机 更多 模型 篇文章 计算机网络 不行 不错 实用 操作系统 也就是 兴趣 内需 办法 地址 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 泰拉瑞亚不同服务器可以联机吗 网络安全内网络准入 数据库借书视图 派出所开展网络安全管理 湖北网络安全存储服务器机箱采购 石家庄创合网络技术... 软件开发服务生产 上海服务软件开发统计 数据库如何清理日志文件 河南众赢网络技术服务有限公司 怎么设计一套服务器协议 数据库查询某一列中数据 群众网络安全教育 猎聘 菲律宾 软件开发 网络安全防护技术培训 应用软件开发大脑 保理软件开发商 软件开发选什么语言比较好呢 能耗监测系统软件开发 gdc 服务器 地球村网络技术有限公司 电脑网络服务器要多少钱一台 服务器连接状态异常怎么回事 没有英语可以学软件开发专业吗 杭州利牛网络技术有限公司 不停服务器 数据库创建表空间的参数 高校网络安全的问题与思考 软件开发企业完整会计分录 火山安卓软件开发平台
0