简介
于Python + Vue3.js 技术栈实现的域名和SSL证书监测平台 用于解决,不同业务域名SSL证书,申请自不同的平台,到期后不能及时收到通知,导致线上访问异常,被老板责骂的问题 Domain Admin是一个轻量级监控方案,占用系统资源较少。同时,Domain Admin也可以作为一个Flask 和 Vue.js前后端分离的项目模板
-
• 功能描述
-
• 核心功能:域名 和SSL证书 的过期监控,到期提醒
-
• 支持证书:单域名证书、多域名证书、通配符证书、IP证书、自签名证书
-
• 证书部署:单一主机部署、多主机部署、动态主机部署
-
• 通知渠道:支持邮件、Webhook、企业微信、钉钉、飞书等通知方式
-
• 支持平台:macOS、Linux、Windows
-
• 辅助功能:Let’s Encrypt SSL证书申请和自动续期
-
• 多语言:支持中文、英文
项目地址https://github.com/mouday/domain-admin
安装部署
docker部署
# 本地文件夹和容器文件夹映射
$ docker run
-v $(pwd)/database:/app/database
-v $(pwd)/logs:/app/logs
-p 8000:8000
--name domain-admin
mouday/domain-admin:latest
-
• database:sqlite数据库和重要数据的目录
-
• logs:日志目录,用于排查问题
启动命令增加参数:-d,可以后台运行
# 本地文件夹和容器文件夹映射
$ docker run
-d
-v $(pwd)/database:/app/database
-v $(pwd)/logs:/app/logs
-p 8000:8000
--name domain-admin
mouday/domain-admin:latest
也可以用dokcer-compose来一键启动 可以使用docker-compose up -d来启动 当版本更新时,可以用docker-compose pull来拉取镜像,然后用docker-compose up -d来重启新镜像
version: '3.3'
services:
domain-admin:
volumes:
- './database:/app/database'
- './logs:/app/logs'
ports:
- '8000:8000'
container_name: domain-admin
image: mouday/domain-admin:latest
K8s部署
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/instance: domain-admin-latest
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: domain-admin
app.kubernetes.io/version: 1.16.0
argocd.argoproj.io/instance: domain-admin-latest
helm.sh/chart: domain-admin-0.1.0
name: domain-admin-latest
namespace: domain-admin-production
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app.kubernetes.io/instance: domain-admin-latest
app.kubernetes.io/name: domain-admin
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
creationTimestamp: null
labels:
app.kubernetes.io/instance: domain-admin-latest
app.kubernetes.io/name: domain-admin
spec:
containers:
- name: domain-admin
image: mouday/domain-admin:latest
imagePullPolicy: Always
env:
- name: DB_CONNECT_URL
value: "sqlite:///database/database.db"
livenessProbe:
failureThreshold: 3
httpGet:
path: /
port: http
scheme: HTTP
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
ports:
- containerPort: 8000
name: http
protocol: TCP
readinessProbe:
failureThreshold: 3
httpGet:
path: /
port: http
scheme: HTTP
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
原文始发于微信公众号(背带裤的云原生):一款域名SSL证书监测平台 再也不会因为域名到期被老板骂了
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/218745.html