Domain-Admin项目安装部署全指南

Domain-Admin项目安装部署全指南

【免费下载链接】domain-admin 域名SSL证书监测平台、SSL证书申请自动续签。Domain and SSL Cert monitor System. 【免费下载链接】domain-admin 项目地址: https://gitcode.com/GitHub_Trending/doma/domain-admin

项目简介

Domain-Admin是一个基于Flask框架开发的域名管理系统,主要用于域名和SSL证书的集中管理。它提供了简洁的用户界面和丰富的功能,适合个人开发者、运维团队以及企业IT部门使用。

系统要求

在开始安装前,请确保您的环境满足以下基本要求:

  • 操作系统:Linux/Windows/macOS
  • Python环境:Python 2.7+ 或 Python 3.4+
  • 数据库支持:SQLite(默认)/MySQL/PostgreSQL
  • 内存:至少512MB
  • 磁盘空间:至少100MB可用空间

安装方式详解

1. 宝塔面板安装(推荐新手)

宝塔面板提供了图形化的一键安装方式,适合不熟悉命令行操作的用户。

安装步骤:

  1. 确保已安装宝塔面板最新版
  2. 在宝塔面板中打开Docker管理界面
  3. 在应用商店中搜索"Domain Admin"
  4. 点击安装按钮,等待安装完成
  5. 安装完成后,可通过8000端口访问系统

优势:

  • 图形化操作简单直观
  • 自动处理依赖关系
  • 提供可视化的容器管理

2. Docker方式安装(推荐生产环境)

Docker安装方式简单快捷,且能保证环境一致性。

基础命令:

docker run \
-v $(pwd)/database:/app/database \
-v $(pwd)/logs:/app/logs \
-p 8000:8000 \
--name domain-admin \
mouday/domain-admin:latest

参数说明:

  • -v:挂载数据卷,确保数据持久化
  • -p:端口映射,将容器8000端口映射到主机
  • --name:指定容器名称

后台运行: 添加-d参数可使容器在后台运行。

使用docker-compose:

创建docker-compose.yml文件:

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

然后执行:

docker-compose up -d

3. 源码安装(适合开发者)

安装步骤:

  1. 下载最新发布包
  2. 解压并进入目录
  3. 创建Python虚拟环境
  4. 安装依赖
  5. 创建启动文件
  6. 运行应用

详细命令:

# 下载源码包
wget https://example.com/domain-admin-1.5.8.tar.gz

# 解压
tar -zxvf domain-admin-1.5.8.tar.gz
cd domain-admin-1.5.8

# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate

# 安装依赖
pip install .

# 创建启动文件app.py
echo "from domain_admin.main import app

if __name__ == '__main__':
    app.run(port=8000)" > app.py

# 启动应用
python app.py

4. 1Panel面板安装

1Panel是一个新兴的Linux服务器管理面板,安装方式与宝塔类似:

  1. 在1Panel应用商店中搜索Domain-Admin
  2. 点击安装并配置必要参数
  3. 等待安装完成即可使用

5. Kubernetes部署(适合大规模部署)

部署示例:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: domain-admin
  namespace: domain-admin-production
spec:
  replicas: 1
  selector:
    matchLabels:
      app: domain-admin
  template:
    metadata:
      labels:
        app: domain-admin
    spec:
      containers:
      - name: domain-admin
        image: mouday/domain-admin:latest
        ports:
        - containerPort: 8000
        env:
        - name: DB_CONNECT_URL
          value: "sqlite:///database/database.db"

6. pip安装(适合Python开发者)

Linux/macOS安装:

# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate

# 安装并运行
pip install gunicorn domain-admin
gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'

Windows安装:

py -3 -m venv venv
venv\Scripts\activate
pip install waitress domain-admin
waitress-serve --listen=127.0.0.1:8000 domain_admin.main:app

数据库配置

Domain-Admin支持多种数据库:

  1. SQLite(默认,适合小型部署)

    DB_CONNECT_URL=sqlite:///database/database.db
    
  2. MySQL(适合团队使用)

    DB_CONNECT_URL=mysql://root:password@host:3306/database
    

    建议创建数据库时指定字符集:

    CREATE DATABASE domain_db DEFAULT CHARACTER SET=utf8mb4;
    
  3. PostgreSQL

    DB_CONNECT_URL=postgresql://user:password@host:5432/database
    

    需要先安装psycopg2依赖:

    pip install psycopg2
    

配置参数详解

可以通过.env文件或环境变量配置系统参数:

# 运行模式
APP_MODE=production  # 可选production/development

# 允许执行的命令白名单
ALLOW_COMMANDS=nginx -s reload;/etc/init.d/nginx restart

# 是否允许用户注册
ENABLED_REGISTER=true

配置方式:

  1. 直接修改.env文件
  2. 通过Docker环境变量传递
  3. 在Kubernetes配置中设置

安全建议

  1. 修改默认密码
    系统默认账号为admin/123456,首次登录后应立即修改密码。

  2. 生产环境数据库选择
    生产环境建议使用MySQL或PostgreSQL,避免SQLite的锁表问题。

  3. 访问控制
    建议配置防火墙规则,限制访问IP范围。

  4. 定期备份
    定期备份挂载的database目录,防止数据丢失。

常见问题

  1. 端口冲突
    如果8000端口被占用,可以修改映射端口,如-p 8080:8000

  2. 数据库连接问题
    确保数据库服务正常运行,且连接字符串格式正确。

  3. 权限问题
    确保挂载目录有正确的读写权限。

  4. 升级注意事项
    升级时保留database目录即可实现平滑升级。

总结

Domain-Admin提供了多种灵活的安装方式,从简单的Docker部署到复杂的Kubernetes集群部署,可以满足不同场景下的需求。生产环境推荐使用Docker或Kubernetes部署方式,配合MySQL数据库,确保系统的稳定性和可靠性。

【免费下载链接】domain-admin 域名SSL证书监测平台、SSL证书申请自动续签。Domain and SSL Cert monitor System. 【免费下载链接】domain-admin 项目地址: https://gitcode.com/GitHub_Trending/doma/domain-admin

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值