Submin 部署SVN服务器WEB管理端

优点:

创建用户发送邮件功能

支持用户登陆后,自己修改密码

非常直观的权限规则管理


目前不具备仓库备份功能



wKiom1noAliDHoUbAADSVaIr6P4916.png


要求:

linux 环境:cetnOS 7 64bit

1.安装依赖包(svn, apache及相关支持模块):
yum install -y subversion subversion-python httpd mod_dav_svn apr-util-sqlite wget vim

2.下载并安装 submin:
wget http://supermind.nl/submin/current/submin-2.2.1-1.tar.gz       # 下载安装包
tar xfz submin-2.2.1-1.tar.gz -C /usr/local/                        # 解压到/usr/local/
cd /usr/local/submin-2.2.1-1
python setup.py install                                             # 安装


3.创建 svn 根目录并分配权限给 apache: 根目录设置为 /home/svn
mkdir /home/svn && chown apache:apache /home/svn -R


4.交互式配置:
submin2-admin /opt/submin/ initenv svn-admin@yvi**.cn                                       # 管理员的邮箱地址(任意),/opt/submin/ 为 submin 配置目录
1)Which features do you want to enable? [svn, git, apache, nginx]> svn, apache             # 启用的特性
2)Path to the repository? [svn]> /home/svn                                                 # svn 仓库根目录
3)Hostname? [centos7.zhengsw]> 172.16.20.38                                                # 主机名,输入本机 ip
4)HTTP base? [/]>                                                                          # http 根路径,直接回车
5)Email from envelope? [Submin <root@centos7.zhengsw>]>svn-admin@yvi**.cn                  # 发送邮件时使用的邮箱地址,不需要,回车


5.submin 配置为使用 svn(默认为 git)
submin2-admin /opt/submin config set vcs_plugins svn

6.设置 submin web端账账户:admin:admin:
sqlite3 /opt/submin/conf/submin.db
>update users set password="$apr1$IipSX7q0$9RMBxwVmSnLu18We252Ko." where name="admin";


7.配置 apache:
submin2-admin /opt/submin/ apacheconf create all                                            # 生成用于 apache 的配置文件
ln -s /opt/submin/conf/apache-2.4-webui-cgi.conf /etc/httpd/conf.d/
ln -s /opt/submin/conf/apache-2.4-svn.conf /etc/httpd/conf.d/
systemctl enable httpd.service                                                              # 设置 apache 开机启动

8.启动 apache:
systemctl restart httpd.service

9.防火墙开放 http:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

10.关闭selinux:
setenforce 0                                                                                # 临时关闭办法
修改/etc/selinux/config文件中设置SELINUX=disabled, 然后重启服务器                           # 永久关闭

11.浏览器中访问:
地址:本机ip/submin  默认用户与密码admin/admin