Go-Ldap-Admin Go-Ldap-Admin
首页
  • 产品概述
  • 安装入门
  • 参与贡献
  • 最佳实践

    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置企业飞书同步
  • 常见问题
版本历史
  • openLDAP
捐赠支持
在线体验 (opens new window)
GitHub (opens new window)
首页
  • 产品概述
  • 安装入门
  • 参与贡献
  • 最佳实践

    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置企业飞书同步
  • 常见问题
版本历史
  • openLDAP
捐赠支持
在线体验 (opens new window)
GitHub (opens new window)
  • 产品概述

    • 关于go-ldap-admin
    • 平台功能概览
    • 关于修改密码的方法以及说明
  • 安装入门

    • docker-compose在本地快速拉起测试环境
    • 生产环境原生部署流程
      • 前言
      • 制品获取
        • 后端
        • 前端
      • 部署后端
        • 编译项目
        • 更改配置
        • systemd管理
        • 启动项目
        • 验证服务
      • 部署前端
        • 修改配置
        • 编译项目
        • OpenResty配置
      • 数据备份
    • 本地开发指南
    • 快速开始
    • CentOS7 安装 Go-Ldap-Admin
  • 参与贡献

    • 问题反馈
  • 最佳实践

    • ldap用户以及分组的设计思路
    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置飞书同步
    • 三方IM数据同步调试
  • 常见问题

    • 问题汇总摘要
    • 如何将ldap中的basedn更改为自己定义的
    • 如何自定义秘钥对儿
    • 如何备份
  • 项目相关
  • 安装入门
二丫讲梵
2022-06-04
目录

生产环境原生部署流程

# 前言

生产环境部署,建议暂时用原生方式进行部署,其中MySQL与openLDAP外置单独部署,这里不再赘述,默认已经准备好了。

这里罗列当下默认配置,其他系统请自行根据情况进行相应调整。

  • 系统:CentOs7系统
  • MySQL:5.7
  • openLDAP:1.14.0
  • OpenResty:1.21.4.1-0
  • 域名:demo-go-ldap-admin.eryajf.net

# 制品获取

以下文档为旧版,其中制品的获取是通过下载源码之后,编译得来,现在已经对前后端增加了自动构建制品的能力,因此下边编译项目的步骤你可以忽略,参考这里的步骤,直接通过下载release中的制品即可获得。

# 后端

你可以在这里 (opens new window)找到最新版本:

$ wget https://github.com/eryajf/go-ldap-admin/releases/download/v0.5.9/go-ldap-admin-v0.5.9-linux-amd64.tar.gz
$ tar xf go-ldap-admin-v0.5.9-linux-amd64.tar.gz
1
2

其中后端制品解压之后,包含内容如下:

$ tree -N
.
├── LICENSE
├── README.md
├── config.yml
├── go-ldap-admin
├── go-ldap-admin-priv.pem
├── go-ldap-admin-pub.pem
├── go-ldap-admin-v0.5.9-linux-amd64.tar.gz
└── rbac_model.conf

0 directories, 8 files
1
2
3
4
5
6
7
8
9
10
11
12

# 前端

你可以在这里 (opens new window)找到最新版本:

$ wget https://github.com/eryajf/go-ldap-admin-ui/releases/download/v0.5.12/go-ldap-admin-ui-v0.5.12.tar.gz
$ tar xf go-ldap-admin-ui-v0.5.12.tar.gz
1
2

前端制品解压之后,包含内容如下:

$ tree -N go-ldap-admin-ui
go-ldap-admin-ui
├── LICENSE
├── README.md
├── default.conf
└── dist
    ├── favicon.ico
    ├── goldapadmin.ico
    ├── index.html
    └── static
        ├── css
        │   ├── app.002b83d7.css
        │   ├── 等等========等等
        │   └── chunk-libs.3dfb7769.css
        ├── fonts
        │   ├── element-icons.535877f5.woff
        │   └── element-icons.732389de.ttf
        ├── img
        │   ├── 401.089007e7.gif
        │   ├── 404.a57b6f31.png
        │   ├── 404_cloud.0f4bc32b.png
        │   ├── goldapadmin.ecbc528a.png
        │   └── login.e49a1d4c.jpeg
        └── js
            ├── app.2b71e8e0.js
            ├── 等等========等等
            └── chunk-libs.43b732db.js

6 directories, 39 files
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# 部署后端

# 编译项目

$ make build-linux
1

# 更改配置

根据实际情况调整配置文件内容。

$ vim config.yml
1

# systemd管理

基于systemd进行管理:

$cat /usr/lib/systemd/system/go-ldap-admin.service

[Unit]
Description=Go Ldap Admin Service

[Service]
WorkingDirectory=/data/www/go-ldap-admin.eryajf.net/
ExecStart=/data/www/go-ldap-admin.eryajf.net/go-ldap-admin

[Install]
WantedBy=multi-user.target
1
2
3
4
5
6
7
8
9
10
11

# 启动项目

$ systemctl daemon-reload
$ systemctl start go-ldap-admin
$ systemctl status go-ldap-admin
1
2
3

# 验证服务

启动之后项目将会监听本地8888端口,通过如下请求可验证后端是否可用:

$ curl -s localhost:8888/api/base/ping | jq
{
  "code": 200,
  "data": "pong",
  "msg": "ok"
}
1
2
3
4
5
6

# 部署前端

前端通过OpenResty代理的方式进行部署,同样,关于OpenResty的部署这里就不再赘述,感兴趣的同学可以参考:https://wiki.eryajf.net/pages/296104/ (opens new window)。

# 修改配置

编译项目之前,需要将.env.production中的VUE_APP_BASE_API配置项,更改为正式部署环境的域名。

$ vim .env.production
VUE_APP_BASE_API = 'http://demo-go-ldap-admin.eryajf.net/'
1
2

# 编译项目

# 一些直接从GitHub拉取的依赖需要进行如下配置
$ git config --global url."https://".insteadOf git://

$ npm install --registry=http://registry.npmmirror.com

$ yarn build:prod
1
2
3
4
5
6

编译完成之后,会在本地生成dist目录,需将其同步到服务器。

# OpenResty配置

在OpenResty中添加如下配置,代理本项目:

$ cat /etc/nginx/vhost/demo-go-ldap-admin.eryajf.net.conf

server {
    listen 80;
    server_name demo-go-ldap-admin.eryajf.net;

    root /data/www/go-ldap-admin.eryajf.net/dist;

    location / {
        try_files $uri $uri/ /index.html;
        add_header Cache-Control 'no-store';
    }

    location /api/ {
        proxy_set_header Host $http_host;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://127.0.0.1:8888;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

配置重载之后,即可在浏览器通过http://demo-go-ldap-admin.eryajf.net (opens new window)进行访问。

# 数据备份

待补充,理论上仅备份MySQL的go_ldap_admin库即可,平台将提供数据一键灌入的能力。

帮助我们改善此页面 (opens new window)
上次更新: 2023/03/31, 22:25:48
docker-compose在本地快速拉起测试环境
本地开发指南

← docker-compose在本地快速拉起测试环境 本地开发指南→

Theme by Vdoing | Copyright © 2022-2023 Eryajf | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式