文档章节

docker dns

kut
 kut
发布于 2018/12/17 00:14
字数 212
阅读 23
收藏 0

There is a opensource application that solves this issue, it's called DNS Proxy Server

It's a DNS server that solves containers hostnames, if could not found a hostname that matches then solve it from internet as well

Start the DNS Server

$ docker run --hostname dns.mageddo --name dns-proxy-server -p 5380:5380 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /etc/resolv.conf:/etc/resolv.conf \
defreitas/dns-proxy-server

It will set as your default DNS automatically (and recover to the original when stops)

Start your container for test

docker-compose up

docker-compose.yml

version: '2'
services:
  redis:
    container_name: redis
    image: redis:2.8
    hostname: redis.dev.intranet
    network_mode: bridge # that way he can solve others containers names even inside, solve elasticsearch, for example
  elasticsearch:
    container_name: elasticsearch
    image: elasticsearch:2.2
    hostname: elasticsearch.dev.intranet

Now solve your containers hostnames

from host

$ nslookup redis.dev.intranet
Server:     172.17.0.2
Address:    172.17.0.2#53

Non-authoritative answer:
Name:   redis.dev.intranet
Address: 172.21.0.3

from another container

$ docker exec -it redis ping elasticsearch.dev.intranet
PING elasticsearch.dev.intranet (172.21.0.2): 56 data bytes

As well it solves internet hostnames

$ nslookup google.com
Server:     172.17.0.2
Address:    172.17.0.2#53

Non-authoritative answer:
Name:   google.com
Address: 216.58.202.78

本文转载自:https://stackoverflow.com/questions/37242217/access-docker-container-from-host-using-containers-n...

共有 人打赏支持
下一篇: 一些资料
kut

kut

粉丝 52
博文 118
码字总数 33321
作品 0
广州
技术主管
私信 提问
Docker 配置 DNS 服务(Ubuntu)

Docker 配置 DNS 服务(Ubuntu) 无论是Ubuntu还是Ubuntu 桌面繁衍版在系统运行的时候都是使用配置文件中的127.0.0.1作为域名服务器(nameserver)。NetworkManager设置dnsmasq使用真实的dns服务...

openthings
2016/03/29
479
0
docker build过程中DNS失效问题解决

该问题是在我使用alpine的apk安装相关软件时发现的,无论如何也无法访问第三方网站,同样在ubuntu中也是如此。 不仅仅是docker build过程中存在DNS解析问题,其实默认在docker运行时,在doc...

John
2018/06/26
0
0
如何确定kubernetes依赖的各个组件版本?

综述 简单来讲:kubernetes依赖的各个组件版本都可以在对应的changlog中找到 比如1.10版本依赖情况如下: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.10.md#externa...

党志强
2018/07/04
0
0
Docker系列教程18-用户定义网络中的内嵌DNS服务器

原文: ,转载请说明出处。 本节中的信息涵盖用户自定义网络中的容器的内嵌DNS服务器操作。连接到用户自定义网络的容器的DNS lookup与连接到默认 网络的容器的工作机制不同。 注意 :为了保持...

EACDY
2018/05/07
0
0
Docker: 如何修改 Docker 的镜像存储位置

我用的阿里云的服务器, 但是系统盘只有20G, 默认 Docker 的镜像文件是安装在/var/lib 目录下的, 这样的话我根本装不了太多的镜像… 这个必须得改改… 搜了下, 解决方案如下: 方案1, 使用参数...

John
2018/04/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

嵌入式应用选择合适的微控制器

准备所需硬件接口列表 使用微控制器的基本硬件框图,准备一份微控制器需要支持的所有外设接口的列表。微控制器中有两种常见的接口类型需要列出。第一种是通信接口,这些是外围设备,如USB,S...

linuxCool
17分钟前
2
0
Group by使用

概述 GROUP BY我们可以先从字面上来理解,GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,如果有用Excel比较多的话,GROUP BY比较类似Excel里面的透视表。 GROUP BY必须得配合...

小橙子的曼曼
29分钟前
3
0
机械臂写中文

Make Me a Hanzi https://www.skishore.me/makemeahanzi/ 使用uArm Swift Pro机械臂写中文-毛笔字 https://github.com/makelove/Robot_Arm_Write_Chinese...

itfanr
40分钟前
4
0
OSChina 周三乱弹 —— 孤独到都和病毒发生了感情了

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @-冰冰棒- :#今日歌曲推荐# 逃跑计划《一万次悲伤 (Live)》 《一万次悲伤 (Live)》- 逃跑计划 手机党少年们想听歌,请使劲儿戳(这里) 现在...

小小编辑
今天
1K
14
test

//// main.c// Test//// Created by 吕颖 on 2019/1/16.// Copyright © 2019年 carmen. All rights reserved.//#include <stdio.h>#include <stdlib.h>#include <t......

carmen-ly
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部