centos docker搭建svn
1、下载镜像
#docker pull garethflowers/svn-server
2、创建存放svn仓库路径
#mkdir -p /data/svn/repo
3、启动容器
#docker run --name svn -d -v /data/svn/repo:/var/opt/svn -p 3690:3690 garethflowers/svn-server
命令解析
-d 守护式后台运行容器
-v /data/svn/repo为宿主机的文件目录,/var/opt/svn为容器内的文件目录
-p 3690:3690 将宿主机的3690端口映射到容器的3690端口,3690是svn的默认端口,可以根据需要自行修改
4、创建仓库
#进入容器
#docker exec -it svn /bin/bash
#创建一个 my_svn 的仓库
#svnadmin create my_svn
上面将 /var/opt/svn 目录映射到宿主机的 /data/svn/repo
5、配置仓库的权限
#编辑文件配置
#/data/svn/repo/my_svn/conf
#vi svnserve.conf
主要修改以下信息:
# 匿名用户不可读写,也可设置为只读 read
anon-access = none
# 授权用户可写
auth-access = write
# 密码文件路径,相对于当前目录
password-db = passwd
# 访问控制文件
authz-db = authz
# 认证命名空间,会在认证提示界面显示,并作为凭证缓存的关键字,可以写仓库名称比如my_svn
realm = /var/opt/svn/my_svn
6、修改passwd文件
#设置密码
#vi passwd
#设置用户=密码
admin = admin
user1 = user1
7、修改authz文件
#设置访问权限
[groups]
owner = admin
[/] # / 表示所有仓库
admin = rw # 用户 admin 在所有仓库拥有读写权限
[my_svn:/] # 表示以下用户在仓库 my_svn的所有目录有相应权限
@owner = rw # 表示 owner 组下的用户拥有读写权限
8、重启容器
#注意备份
9、客户端登陆
地址:svn://192.168.59.103:3690/my_svn
10、验证测试
成功加入文件
切换用户user1
检出/下载文件