使用docker搭建dns时如何利用域名访问实现替代ip:port

第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

#创建代理文件-添加外部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做域名反向代理

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"

原创文章,作者:RAENC,如若转载,请注明出处:http://www.wangzhanshi.com/n/13949.html

(0)
RAENC的头像RAENC
上一篇 2025年1月1日 17:04:52
下一篇 2025年1月1日 17:04:57

相关推荐

发表回复

登录后才能评论