容器 github目录 https://github.com/elleFlorio/svn-docker

1.docker search svn

docker pull docker.io/elleflorio/svn-server 这个带有http协议
3.构建svn容器

docker run -v /usr/local/svn:/home/svn -v /usr/local/svn/passwd:/etc/subversion/passwd -v /usr/local/apache2:/run/apache2 –name hltz_svn -p 3380:80 -p 3690:3960 -e SVN_REPONAME=repos -d docker.io/elleflorio/svn-server

映射/usr/local/apache2:/run/apache2 的目的是http启动要在该目录下创建一个文件,没有映射目录容器重启之后目录就不见了,没有映射目录会报下面那个错误(在容器中 find / -name ‘error.log’,可以查找到错误日志)

SVN_REPONAME用于指定新创建的代码库的名称。

创建 http 访问账号

docker exec -t hltz_svn htpasswd -b /etc/subversion/passwd dqw Dqw
1

此账号和密码被写入容器中的 HTTP 认证文件(/etc/subversion/passwd),且密码是加密的。实践经验表明,既然用 http 协议访问只能查看,那么创建一个公共的账号,供大家使用即可。也可创建与 svn 认证文件中一样的账号和密码。
1
docker exec -it hltz_svn /bin/sh 进入容器中
1
创建资源库/home/svn # svnadmin create /home/svn/repos

6.资源库配置

/var/svn/repository/conf # vi svnserve.conf,把下面4个的#号去掉,左边不能有空格

anon-access = none    #使非授权用户无法访问

auth-access = write    #使授权用户有写权限

password-db = passwd  #指明密码文件路径

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

密码文件读取passwd文件,授权信息读取authz文件。

7.编辑密码文件

/var/opt/svn/repository/conf # vi passwd

设置 dqw用户密码是dqw

vi authz

表示dqw账户是管理员, *=r表示所有用户有读权限, @admin =rw 这个用户组有读写权限;

9.配置完成!由于构建容器的时候已经把宿主机svn目录映射到svn容器中,所有/usr/local/svn/repository 目录中可以直接配置svn,修改配置之后重启容器即可!

10.搭建完成之后记得在阿里云上配置3380端口的白名单

11.docker logs -t -f –since=“2018-01-01” –tail=50 hltz_svn

查看日志:发现报错

)进入容器中apache的安装目录:(视个人安装情况而不同) [root@server ~]# cd /etc/apache2

2)编辑httpd.conf文件,搜索”#ServerName”,添加ServerName localhost:80
[root@server conf]# ls
extra httpd.conf magic mime.types original
[root@server conf]# vi httpd.conf
#ServerName www.example.com:80
ServerName localhost:80
3)再重新启动容器即可。

导入的时候报一下错误:

Error:svn: E000013: Can’t open file ‘/home/svn/repos/db/txn-current-lock’: Permission denied(没有权限)

在容器中添加权限给目录

chmod -R o+rw /home/svn

添加这个权限就可以了,因为启动svn是root用户,但是你用idea的时候不是root用户

http://ip地址:3380/svn/repos/

在网页上可以直接访问,输入账号密码就可以了

在idea跟eclipse中也一样
————————————————
版权声明:本文为CSDN博主「walk_thinker」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/walk_thinker/article/details/84142990

发表评论

邮箱地址不会被公开。 必填项已用*标注