docker svn-server
如何快速使用docker跑一个svn服务呢?
一、拉取svn-server的docker镜像
docker pull docker.io/garethflowers/svn-server
查看一下镜像
ubuntu@shenzhenvm ~/repo % docker image list
REPOSITORY TAG IMAGE ID CREATED SIZE
garethflowers/svn-server latest 6daa58d77a6f 8 weeks ago 16.1MB
ubuntu latest 1d622ef86b13 6 months ago 73.9MB
ubuntu 18.04 c3c304cb4f22 6 months ago 64.2MB
二、跑起来就完了
docker run \
--name svn-server \
-d \
-v $your_work_path/svn:/var/opt/svn \
-p 3690:3690 \
garethflowers/svn-server
–name: 容器的名字
-d: detach,分离模式,让容器在后台运行
-v: 挂载一个本机目录,数据可以持久化,冒号隔开,前面是本机的,自行修改
-p: 将容器的端口暴露到主机外
三、创建一个新的SVN仓库
docker exec -it svn-server svnadmin create $your_repo_name
四、修改配置
进入容器交互式终端
docker exec -it svn-server /bin/sh # 注意是sh,没有bash,不过有ash
默认路径是/var/opt/svn
,目录下有刚才创建的仓库,我的是repo
,然后修改conf目录下的文件
/var/opt/svn # ls
repo
/var/opt/svn # cd repo/conf
/var/opt/svn/repo/conf # ls
authz hooks-env.tmpl passwd svnserve.conf
/var/opt/svn/repo/conf #
修改svnserve.conf
为如下,有些去掉注释即可
anon-access = none # 匿名用户不能访问
auth-access = write # 授权用户可读可写
password-db = passwd # 密码文件位置
authz-db = authz # 授权文件位置
修改passwd
文件,添加一个用户,用户密码自定义
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret
jack = 123qwe
jack: 用户名
123qwe:密码
修改authz
文件,授权jack
相关权限,在文件末尾追加即可
[repo:/]
jack = rw
/:根目录
rw:读写权限
然后就何以使用了
五、客户端
安装subversion
,不同发行版,包管理器不同,自行安装,不懂的自行搜索
检出
svn co --username=jake svn://127.0.0.1:3690/repo # 要指定用户名,会要求输入密码
# 绑定了域名的就可以联网访问了,别忘了安全组3690端口放行
co:checkout
其他的就是学习svn
的语法了,但现在大多(我猜)都使用git
吧,都学也好,技多不压身