docker svn仓库搭建及hook配置

创建svn-server镜像

  #拉取镜像
  docker pull garethflowers/svn-server
  #启动镜像
  docker run  -v /home/svn:/var/opt/svn  --name svn-server  -p 3690:3690  --privileged=true  -e SVN_REPONAME=repository  -d docker.io/garethflowers/svn-server
  • -v /home/svn:/var/opt/svn:将容器的/var/opt/svn文件夹下的内容映射到宿主机的/home/svn文件夹下面
  • --name svn-server:容器取名为svn-server
  • -p 3690:3690:将容器的3690端口映射到宿主机器的3690
  • --privileged=true:将容器以特权方式启动
  • -e SVN_REPONAME=repository:环境变量,这里指定svn仓库名称为repository

创建svn仓库

docker exec -it svn-server /bin/sh
svnadmin create /var/opt/svn/test-repo

配置仓库

打开svnserve.conf下面配置

anon-access = none
auth-access = write
authz-db = authz
password-db = passwd

添加用户,修改passwd

[users]
# harry = harryssecret
# sally = sallyssecret
lcy=123

添加用户组设置权限修改authz文件

#新建一个名为test-group的用户组,并把名为test的用户加入到用户组。若多个用户需要加入用户组,用英文逗号分隔
test-group = lcy

#设置test-group用户组对仓库test-repo的读写权限
[test-repo:/]
@test-group = rw

添加svn hook

进入hooks目录
复制一个post-commit
>cp post-commit.tmpl post-commit

#修改内容
#!/bin/sh
export LANG=zh_CN.UTF-8
REPOS="$1"
REV="$2"
/usr/bin/svn update [发布目录] --username test --password test --no-auth-cache
posted @ 2021-07-20 23:10  紫——瞳  阅读(200)  评论(0编辑  收藏  举报