【来自】:docker安装svn
构建svn容器
docker run --privileged=true --restart always --name svn-server -d -v /home/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server
命令解析:
--privileged=true 授予容器管理员权限,预防创建svn创库时提示权限不足
--restart always 设置容器随宿主机开机自启
--name svn-server 设置容器name为svn-server,可自定义
-d 指定这个容器后台运行
-v /home/svn:/var/opt/svn 挂载宿主目录到容器目录
进入容器
docker exec -it svn-server /bin/sh
创建svn库
svnadmin create demo
创建成功后生成demo目录,进入该目录下的conf配置文件夹。有以下几个文件authz, passwd, svnserve.conf
authz 是权限控制,可以设置哪些用户可以访问哪些目录,
passwd是设置用户和密码的
svnserve是设置svn相关的操作
1. 配置passwd文件
配置passwd文件vi passwd
2. 配置authz
vi authz 这里有两种配置方式
第一种,以用户组的方式配置,一个组下可以有多个用户,例如:
第一种 配置authz这里的意思就是admin这个组下存在zhangsan,lisi两个账户,[/]表示根目录,@admin表示给组设置根所有仓库的rw(读写)权限,给组设置权限必须用@符号 ,[/] 代表所有仓库, [repo:/] 代表用户在repo 仓库的所有目录有相应权限,这里根据自己需求设计。
第二种,直接给用户设置权限
第二种 配置authz3. 编辑svnserve,找到 [general] 节点,加入以下内容
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /var/opt/demo/svn
退出容器,重启容器
exit
docker restart svn-server
网友评论