docker搭建svn并对svn客户端进行相关操作

摘要:
2.在Docker中构建SVN 2.1.构建之前的准备工作1)构建Docker 2)配置相关Docker环境2.2.安装SVN步骤1:安装并启动容器命令:Docker run--restartalways--namesvn-d-v/data/SVN:/var/opt/SVN-p3690:3690gatethflowers/SVN-server参数解析:/data/svin是主机的文件目录,/Var/opt/svn是容器中的文件目录--restartalways命令可以使容器在主机通电时自动启动-p3690:3690表示主机的3690端口映射到容器的3690。该端口是svn服务的默认端口,可以根据需要进行修改。注意:这里我们安装了svn,在Linux中,我们需要打开3690端口并将相应的端口添加到安装组中。这样,我们可以在浏览器中正确访问。

1.开发者前言

这篇博客我根据自己经验和搜索总结而来的,不足之处还希望大家谅解。我写这篇文章的原因是,我在网上看了很多资料,但是感觉很多都是不很全。并且一个很不好的现象是很多都是复制别人博客,缺的很多,希望我的这篇博客对大家有一点点帮助,谢谢。

2.docker中svn搭建

2.1. 搭建前准备

1)搭建docker

2)配置相关docker环境

2.2. 安装svn

步骤1:安装并启动容器

命令:docker run --restart always --name svn -d -v /data/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server

参数解析:

/data/svn为宿主机的文件目录,/var/opt/svn为容器内的文件目录

--restart always命令可以实现容器在宿主机开机时自启动

-p 3690:3690表示将宿主机的3690端口映射到容器的3690端口,此端口为svn服务的默认端口,可以根据需要自行修改

注:这里我们安装了svn,在linux中我们需要开启3690端口,和把对应对口加入到安装组,这样我们才能正确的在浏览器里面进行访问。

附:端口和防火墙开启方式

1)查看端口是否开启

 firewall-cmd --list-all

2)开启端口

firewall-cmd --add-port=80/tcp --permanent

3)重启防火墙

firewall-cmd --reload

步骤2:创建svn仓库和账户

1)进入容器

docker exec -it svn /bin/sh

2)创建名称和svn仓库

svnadmin create svn

配置成功后在仓库下面会显示如下文件

docker搭建svn并对svn客户端进行相关操作第1张

1)资源仓库配置,修改svnserve.conf

anon-access = none             # 匿名用户不可读写,也可设置为只读 read

auth-access = write            # 授权用户可写

password-db = passwd           # 密码文件路径,相对于当前目录

authz-db = authz               # 访问控制文件

realm = /var/opt/svn/svn       # 认证命名空间,会在认证提示界面显示,并作为凭证缓存的关键字,可以写仓库名称比如svn

2)配置账号与密码,修改 passwd文件,格式为账号 = 密码 相关命令:vi passwd

docker搭建svn并对svn客户端进行相关操作第2张

 docker搭建svn并对svn客户端进行相关操作第3张

1)配置账户权限,修改 authz文件 相关命令:vi authz

owner = admin          

test1 = lixi           

dev  = xietao,zhangsan,wangwu

[/]                          

admin = rw             

[svn:/]                      

@owner = rw                  

@test1 = r                   

@dev = rw 

docker搭建svn并对svn客户端进行相关操作第4张

参数解释:

在这里,我配置了三个用户组ownertest1dev组,这三个组后面会用到来测试svn相关的权限验证。安装完成后,下面会做对应的验证操作。

主要验证样例为:

----用户组owner用查看和提交数据和读数据的权限,里面的用户有admin

----用户组test1组用户只有读的权限没有修改数据的权限,里面的用户有lixi

----用户组dev有读和写的权限,里面的用户有xietao/zhansan/wangwu

1)步骤3:拉取svn

打开浏览器,输入svn://xxxxxx:3690/svn,其中xxxx为ip地址。

注:服务器安装完成后,你自己需要安装自己的一个客户端工具TotoiseSVN

如下输入上面地址后,点击打开客户端

docker搭建svn并对svn客户端进行相关操作第5张

选择打开后就会出现下图的界面,输入用户名和密码就可以登录进去了,而对应的用户名和密码在上面已经做了介绍。

docker搭建svn并对svn客户端进行相关操作第6张

我为了演示上面提到的案例,就是不同组内成员的权限问题,我使用admin用户登录进去创建了两个文件夹

docker搭建svn并对svn客户端进行相关操作第7张

1.1. 组内权限验证

案例:

----用户组owner用查看和提交数据和读数据的权限,里面的用户有admin

----用户组test1组用户只有读的权限没有修改数据的权限,里面的用户有lixi

----用户组dev有读和写的权限,里面的用户有xietao/zhansan/wangwu

docker搭建svn并对svn客户端进行相关操作第8张

登录test1组内用户,上传或者修改文件

 docker搭建svn并对svn客户端进行相关操作第9张

登录成功后,上传文件,提示权限不足

docker搭建svn并对svn客户端进行相关操作第10张

而登录其他用户上传文件时,只要有rw权限的就可以实现文件上传和修改

结束语:上面的svn安装已经模拟现代企业中团队开发中项目管理进行了搭建,剩下关于svn的相关操作大家可以网上去找相关资料进行学习和总结了,感谢大家的捧场。

免责声明:文章转载自《docker搭建svn并对svn客户端进行相关操作》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇spring boot tomcat 部署程序员常去的10个顶级开发社区下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

基于docker/dockerfile实现redis主从复制

今天我们来搭建基于docker实现redis主从复制集群 为什么要使用redis集群模式? Redis可以说是内存数据库,mysql的数据库是真实存储在硬盘里的,因此,redis的读取速度要比mysql快得多,同时,redis也是最好的cache工具,一般情况下,数据存储量大小不能超过主机的内存,我们说的高并发场景很容易造成,数据溢出乃至性能瓶颈,显然单机...

linux下安装配置svn服务器

linux下安装配置svn服务器 1. svn服务器安装 将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器。 tar xfvz subversion-1.4.0.tar.gz tar xfvz subversion-deps-1.4.0.tar.gz cd subversion-1.4.0...

docker中 WSL 配置 修改

Resources The Resources tab allows you to configure CPU, memory, disk, proxies, network, and other resources. Different settings are available for configuration depending on whet...

kubernetes集群部署

鉴于Docker如此火爆,Google推出kubernetes管理docker集群,不少人估计会进行尝试。kubernetes得到了很多大公司的支持,kubernetes集群部署工具也集成了gce,coreos,aws等iaas平台,部署起来也相当的方便。鉴于网上众多资料基于的是不少老版本,本篇文章针对最新的kubernetes及其依赖组件的部署简要阐述...

eri

localhost.crt-bakvim /etc/netplan/50-cloud-init.yaml 写入网卡 root@master:~# cat /etc/netplan/50-cloud-init.yaml # This file is generated from information provided by # the datasour...

[开荒啦]ECS服务器初体验

服务商:阿里云 操作系统:Linux 64位 Ubantu 20.04 64位 目录 另设了一个用户 安装tmux并配置了一些vim和tmux的便捷操作 安装docker Xshell配置ssh免密登录 利用本地Dos窗口连接服务器 今天对我第一个服务器(毛坯)做了一些简单的布置: 另设了一个用户总是直接操作根用户不是很好,权限太大,一不小心把服务器...