基础环境
系统版本: centos-7.6(linux)
环境依赖: Docker
系统要求:关闭selinux
防火墙放行80、3690端口(或者关闭防火墙)
服务器的80和3690端口没有被占用
拉取镜像
推荐elleflorio/svn-server的镜像,包含了http和webui(svnadmin)
docker pull elleflorio/svn-server
启动
docker run --name svn-server -d --restart=always -v /home/docker/svn:/home/svn/ -p 80:80 -p 3690:3690 elleflorio/svn-server把容器中的svn目录挂载到物理机的/home/docker/svn
创建仓库# 进入镜像
docker exec -it svn-server /bin/sh
# 创建仓库名为test_svn的仓库
svnadmin create /home/svn/test_svn
# 在容器中需要修改一下这个目录的权限,因为默认是root创建的仓库,在window端没有权限访问,否则会报错:can't open file db/txn-current-lock:permission
chmod 777 -R /home/svn/test_svn/db
修改权限控制
镜像默认没有对权限进行控制,修改一下配置文件vi /etc/apache2/conf.d/dav_svn.conf
DAV svn
SVNParentPath /home/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /home/svn/passwd.conf
AuthzSVNAccessFile /home/svn/auth.conf
Require valid-user
然后重启svn-server容器
创建第一个用户
在物理机上执行docker exec -t svn-server htpasswd -b /home/svn/passwd.conf
# Adding password for user
利用webui(svnadmin)配置权限
the image provides a graphical ui using the SVNADMIN interface via http://svnserver-ip/svnadmin. You'll be prompted with a setup page, remember to test every step on the page then save the configuration.
浏览器地址输入http://ip/svnadmin出现配置界面,输入下图中配置信息,输入每个配置信息可以点击旁边的Test测试是否输入正确,最后保存配置
登陆后我们可以在“Repositories”下“add”,添加项目目录;
在"Users"下添加用户;
在“Access-Paths”下关联对应项目的用户,并分配相关读写权限。
最后更新于 2020-11-20 13:48:48 并被添加「docker svn」标签,已有 2249 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章