1. 首页
  2. 技术知识

docker内网搭建dns使用域名访问替代ip:port的操作

比如我内网有个jenkins,我如果要访问它我得牢牢记住它的ip和端口,一个服务我还能记住,多个的话我可能需要一个方便记忆的域名记录一些内网服务


第1步: 准备好docker环境


第2步:下载好镜像

docker pull andyshinn/dnsmasq:2.75

第3步:运行dnsmasq

#后台启动

docker run -d -p 53:53/tcp -p 53:53/udp –cap-add=NET_ADMIN –name dns-server andyshinn/dnsmasq:2.75

#进入容器

docker exec -it dns-server /bin/sh

#创建X文件-添加外部dns

vi /etc/resolv.dnsmasq

nameserver 114.114.114.114

nameserver 8.8.8.8

#新建本地解析规则配置-添加本地解析规则

#注意:这里的ip要填docker所在主机的ip

vi /etc/dnsmasqhosts

.168.3.54 jenkins.ean.com test1.ean.com

.168.3.54 redis.ean.com

#追加上我们刚才配置的两个文件

#vi /etc/dnsmasq.conf

resolv-file=/etc/resolv.dnsmasq

addn-hosts=/etc/dnsmasqhosts

#退出容器 & 重启

exit

docker restart dns-server


第4步:搭建nginx

一定要在3.54上安装nginx做域名反向X

server{

listen 80;

server_name jenkins.ean.com;

proxy_set_header  Host $host;

location /{

  proxy_pass http://192.168.3.54:8060;

}

}
补充知识:
docker pull 私有仓库 镜像


1、docker pull 私有仓库报错

http server gave http response to https clinet

由于docker版本不同,可尝试下面两种方法:(在客户端配置)

(1)、方法一:通过配置/etc/docekr/daemon.json

vim /etc/docker/daemon.json

{

“insecure-registry”: [“172.16.12.196:5000”](仓库地址)

}(2)、方法二:通过配置/etc/sysconfig/docker

vim /etc/sysconfig/docker

INSECURE_REGISTRY = “–insecure-registry 172.16.12.196:5000”

以上这篇docker内网搭建dns使用域名访问替代ip:port的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持共生网络。

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/106080.html

联系我们