原文:
https://www.cnblogs.com/rongfengliang/p/11498598.html

实际开发中dns 是一个比较重要的组件,一般大家可能会选择使用dnsmasq 但是缺少UI可视化,有些人可能会选择powerdns
jpillora/dnsmasq 是一个对于dnsmasq 的包装,使用了jpillora/webproc 为dnsmasq 暴露一个可视化UI,以下是一个简单的运行
demo

环境准备
docker-compose 文件


version: "3"
services:dns:image: jpillora/dnsmasqports:- "53:53/udp"- "53:53/tcp"- "8080:8080"
 env_file:- .env

.env 文件 主要是账户的

HTTP_USER=demo
HTTP_PASS=demo

jpillora/dnsmasq dockerfile
使用alpine 基础镜像,同时对于dnsmqasq 使用alpine 的包管理,使用
webproc 暴露UI服务

dockerfile

FROM alpine:edge
LABEL maintainer="dev@jpillora.com"
# webproc release settings
ENV WEBPROC_VERSION 0.2.2
ENV WEBPROC_URL https://github.com/jpillora/webproc/releases/download/$WEBPROC_VERSION/webproc_linux_amd64.gz
# fetch dnsmasq and webproc binary
RUN apk update \&& apk --no-cache add dnsmasq \&& apk add --no-cache --virtual .build-deps curl \&& curl -sL $WEBPROC_URL | gzip -d - > /usr/local/bin/webproc \&& chmod +x /usr/local/bin/webproc \&& apk del .build-deps
#configure dnsmasq
RUN mkdir -p /etc/default/
RUN echo -e "ENABLED=1\nIGNORE_RESOLVCONF=yes" > /etc/default/dnsmasq
COPY dnsmasq.conf /etc/dnsmasq.conf
#run!
ENTRYPOINT ["webproc","--config","/etc/dnsmasq.conf","--","dnsmasq","--no-daemon"]

启动&&效果
启动

docker-compose up  -d

效果

dns 查询
使用dig 工具

dig @localhost www.baidu.com
效果

说明
以上是一个简单运行,更多的学习下集成的方式

参考资料
https://hub.docker.com/r/jpillora/dnsmasq/dockerfile
https://github.com/jpillora/webproc
https://github.com/rongfengliang/jpillora-dnsmasq-docker-compose

dns dnsmasq容器化部署相关推荐

  1. 容器化部署实践之Django应用部署(二)

    上一篇文章有些同学感觉不够详细理解起来有些困难,我再来简单解释一下. 我们在开发的情况下:     浏览器请求→ python manage.py runserver(比如8000) → 到应用代码( ...

  2. Docker容器化部署config-server无法直接访问

    Docker容器化部署config-server无法直接访问 1. 本机ip启动方式: 2. Docker容器启动 1)问题 2)解决办法 - 本机启动 - 服务器启动俩种方式 3. dockerfi ...

  3. .NET Core+MySql+Nginx 容器化部署

    .NET Core容器化@Docker .NET Core容器化之多容器应用部署@Docker-Compose .NET Core+MySql+Nginx 容器化部署 GitHub-Demo:Dock ...

  4. 浅谈surging服务引擎中的rabbitmq组件和容器化部署

    1.前言 上个星期完成了surging 的0.9.0.1 更新工作,此版本通过nuget下载引擎组件,下载后,无需通过代码build集成,引擎会通过Sidecar模式自动扫描装配异构组件来构建服务引擎 ...

  5. 谈谈surging引擎的tcp、http、ws协议和如何容器化部署

    1.前言 分布式已经成为了当前最热门的话题,分布式框架也百花齐放,群雄逐鹿.从中心化服务治理框架,到去中心化分布式服务框架,再到分布式微服务引擎,这都是通过技术不断积累改进而形成的结果.esb,网关, ...

  6. Prometheus 容器化部署,配合Grafan画图工具监控节点

    Prometheus 容器化部署,配合Grafan画图工具监控节点 一.部署环境 主机名 IP地址 服务 prometheus 192.168.85.131 prometheus.grafana no ...

  7. 容器化部署与传统部署的区别及优势

    编者按:随着互联网技术的发展和需求上的增加,从传统的物理服务器时代过渡到了容器化部署时代,那么容器化部署我们怎么去理解,以及它有什么优势呢?跟小编一起看看吧. 容器化部署与传统部署的区别 以Docke ...

  8. 项目docker容器化部署步骤

    Docker在部署时的一些基本步骤(主要针对我公司的项目环境): 1.项目中存在不需要使用容器化的服务,所以请安装jdk7.redis.mq.zookeeper.dubbo控制台 2.镜像导入 #ca ...

  9. Django-Docker容器化部署:Django-Docker-MySQL-Nginx-Gunicorn云端部署

    docker简介 目的:可以简单理解为开发人员干了运维的活,开发人员在自己的机器上可以跑,发给运维后,运维却跑不起来. 原因:运维在自己的机器上没有相应的环境和配置. 解决:开发人员将项目的源码以及相 ...

最新文章

  1. 【fiveKeyPress】2秒内五次点击键盘任意键(或组合键)触发自定义事件(以Pause/Break键为例)
  2. Matlab编程与数据类型 -- 数据类型概述
  3. mysql用外键链接两个表_可能做一个MySQL外键的两个可能的表之一?
  4. oracle创建索引---如何创建所以
  5. 试论敏捷开发方法的共同特征
  6. java代理的原理及应用
  7. win10计算机修改底色,win10电脑如何修改登陆背景
  8. allure报告---动态显示模块名和用例标题
  9. java三目表达式_Java8新特性Lambda表达式
  10. 解决centos6.5不能识别NTFS格式的移动硬盘或U盘问题
  11. paper 108:系统学习数字图像处理之图像复原与重建
  12. Oracle如何实现跨库查询
  13. ORL人脸识别tensorflow实现
  14. numpy.loadtxt() 详细用法
  15. 多维多重背包问题_多重选择背包问题,multiple choice knapsack problem,音标,读音,翻译,英文例句,英语词典...
  16. 0ctf-2017-babyheap图解
  17. 解决GD32F105休眠后无法唤醒的问题
  18. java 线程与线程池详解
  19. 2021年全球与中国天然气和石油钻头行业市场规模及发展前景分析
  20. 离线电影管理软件 极影派

热门文章

  1. 2-2 Numpy-矩阵
  2. c语言-常见的输入输出符号
  3. 美容美发店会员管理系统开发_分享美容美发店做会员管理系统的好处
  4. 2023美国大学生数学建模竞赛中文题目发布
  5. 15个精美的 HTML5 单页网站作品欣赏
  6. python计数器_【Python】计数器 Counter
  7. 最新详细版Ubuntu20.04安装教程
  8. Grasshopper for Rhino 6.0 x64 汉化补丁来了,几乎100%完全汉化
  9. [微软新技术培训]微软新技术预览之Microsoft Office SharePoint Server 2007
  10. Multisim14访问主数据库失败的解决方法