文章目录 Hide
因为阿里云账号下面的一个域名要交给别人管理,主要就是改改解析的信息,但是我的账号下面有多个域名,还有VPS,所以账号信息不能交出去。看着阿里云的帮助文件建立了RAM子账户,但是卡在授权上了,要不就是显示所有的域名,要不就是提示没有权限,或者API不支持,都快整崩溃了。在搜索引擎上逛了半天,最后发现了这个彩虹聚合DNS管理系统,可以实现在一个网站内管理多个平台的域名解析,目前已支持的域名平台有:CloudFlare、阿里云、腾讯云、华为云、西部数码、DNSLA。
功能特性
- 多用户管理,可为每个用户可分配不同的域名解析权限
- 提供API接口,可获取域名单独的登录链接,方便各种IDC系统对接
- 容灾切换功能,支持ping、tcp、http(s)检测协议并自动暂停/修改域名解析,并支持邮件、微信公众号通知
- CF优选IP功能,支持获取最新的Cloudflare优选IP,并自动更新到解析记录
部署方法
- 从Release页面下载安装包
- 运行环境要求PHP7.4+,MySQL5.6+
- 设置网站运行目录为
public
- 设置伪静态为
ThinkPHP
- 如果是下载的Source code包,还需Composer安装依赖(Release页面下载的安装包不需要)
composer install --no-dev
- 访问网站,会自动跳转到安装页面,根据提示安装完成
- 访问首页登录控制面板
docker-compose部署方法
启动后监听8081端口
version: '3'
services:
dnsmgr-web:
container_name: dnsmgr-web
stdin_open: true
tty: true
ports:
- 8081:80
volumes:
- /volume1/docker/dnsmgr/web:/app/www
image: netcccyun/dnsmgr
depends_on:
- dnsmgr-mysql
networks:
- dnsmgr-network
dnsmgr-mysql:
container_name: dnsmgr-mysql
restart: always
ports:
- 3306:3306
volumes:
- ./mysql/conf/my.cnf:/etc/mysql/my.cnf
- ./mysql/logs:/logs
- ./mysql/data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=123456
- TZ=Asia/Shanghai
image: mysql:5.7
networks:
- dnsmgr-network
networks:
dnsmgr-network:
driver: bridge
在运行之前请创建好目录
mkdir -p ./web
mkdir -p ./mysql/conf
mkdir -p ./mysql/logs
mkdir -p ./mysql/data
vim mysql/conf/my.cnf
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
登陆mysql容器创建数据库
docker exec -it dnsmgr-mysql /bin/bash
mysql -uroot -p123456
create database dnsmgr;
在install界面链接IP填写dnsmgr-mysql
演示截图
添加域名账户

域名管理列表

域名DNS解析管理,支持解析批量操作

用户管理添加用户,支持为用户开启API接口

CF优选IP功能,添加优选IP任务
