Docker搭建SvnServer

导读:本篇文章讲解 Docker搭建SvnServer,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

下载svn-server官方镜像

docker pull garethflowers/svn-server

运行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
  • 创建一个名为test-repo的仓库
svnadmin create /var/opt/svn/test-repo
  • 退出容器,回到宿主机
exit
  • 修改仓库的配置信息
    进入/home/svn这个目录,可以看到有一个名为test-repo的文件夹
cd /home/svn

进入test-repo/conf文件夹内部,可看到如下文件夹:

svnserve.conf:用来配置仓库

passwd:管理用户

authz:配置用户组;配置仓库访问权限

cd test-repo/
cd conf/

用vi打开svnserve.conf,修改仓库配置

vi  svnserve.conf

去掉以下三处的注释,注意行头不要留空格:
Docker搭建SvnServer

修改完毕之后保存并退出vi:

:wq

用vi打开passwd,添加一个名为test的用户,注意行头不要留空格,等号(=)前后建议加空格,修改完之后保存并退出vi:

vi passwd

Docker搭建SvnServer

用vi打开authz,添加一个名为test-group的用户组,并为该用户组设置仓库的读写权限,修改完毕保存并退出vi:

vi authz

Docker搭建SvnServer

[groups]
#harry_and_sally = harry,sally
#harry_sally_and_joe = harry,sally,&joe

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

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

使用SVNClient工具检出test-repo

本文使用SnailSvn作为SVNClient工具

新建temp文件夹,然后点击svn检出
Docker搭建SvnServer

版本库地址:svn://宿主机ip/test-repo

Docker搭建SvnServer

点击左下角的「小锁」,配置用户名和密码

用户名:test

密码:test
Docker搭建SvnServer

成功连接到了仓库,并在temp文件夹下面创建了一个隐藏的.svn文件夹:

Docker搭建SvnServer

docker异常退出了怎么办

docker异常退出、宿主机断电了或宿主机操作系统损坏了怎么办?

因为svn-server中的文件已经映射到了宿主机器,所以只要文件还在,修复好docker运行环境之后,重新执行docker run命令即可正常访问。

引用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/14901.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!