【Docker】【轉】安裝【svn】

【來自】:https://blog.csdn.net/xu12387/article/details/93050196

構建svn容器

docker run --privileged=true --restart always --name svn-server -d -v /home/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server

命令解析:

 --privileged=true                  授予容器管理員權限,預防創建svn創庫時提示權限不足

--restart always                    設置容器隨宿主機開機自啓

--name svn-server               設置容器name爲svn-server,可自定義

-d                                         指定這個容器後臺運行

-v /home/svn:/var/opt/svn    掛載宿主目錄到容器目錄

進入容器

docker exec -it svn-server /bin/sh

創建svn庫
svnadmin create demo

創建成功後生成demo目錄,進入該目錄下的conf配置文件夾。有以下幾個文件authz, passwd, svnserve.conf

     authz 是權限控制,可以設置哪些用戶可以訪問哪些目錄,

      passwd是設置用戶和密碼的

      svnserve是設置svn相關的操作

1. 配置passwd文件

vi passwd

[users]
# harry = harryssecret
# sally = sallyssecret-
nfz = 123456

2. 配置authz

vi authz 這裏有兩種配置方式
第一種,以用戶組的方式配置,一個組下可以有多個用戶,例如:

[groups]
admin = nfz,lisi
 
[/] 
@amdin = rw
 
[repo:/]

這裏的意思就是admin這個組下存在zhangsan,lisi兩個賬戶,[/]表示根目錄,@admin表示給組設置根所有倉庫的rw(讀寫)權限,給組設置權限必須用@符號 ,[/] 代表所有倉庫, [repo:/] 代表用戶在repo 倉庫的所有目錄有相應權限,這裏根據自己需求設計。

第二種,直接給用戶設置權限

[/]
nfz= rw

3. 編輯svnserve,找到 [general] 節點,加入以下內容

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /var/opt/demo/svn

退出容器,重啓容器

exit
docker restart svn-server

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章