使用Docker搭建svn服務器教程


svn簡介

SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,相較於RCS、CVS,它采用了分支管理系統,它的設計目標就是取代CVS。互聯網上很多版本控制服務已從CVS遷移到Subversion。說得簡單一點SVN就是用於多個人共同開發同一個項目,共用資源的目的。

svn的docker搭建方法

  • 請提前在服務器安裝好docker服務
  • 本篇教程選用的docker鏡像為garethflowers/svn-server
  • 安裝並啟動容器代碼
docker run --restart always --name svn -d -v /root/dockers/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server

簡析

  • /root/dockers/svn為宿主機的文件目錄,/var/opt/svn為容器內的文件目錄
  • --restart always命令可以實現容器在宿主機開機時自啟動
  • -p 3690:3690表示將宿主機的3690端口映射到容器的3690端口,此端口為svn服務的默認端口,可以根據需要自行修改

創建svn倉庫和賬戶

進入容器中進行配置

docker exec -it svn /bin/sh

創建名稱為svn的資源倉庫

svnadmin create svn

創建成功后svn目錄內應該包含以下文件:
README.txt conf db format hooks locks

資源倉庫配置,修改svnserve.conf

anon-access = none             # 匿名用戶不可讀寫,也可設置為只讀 read
auth-access = write            # 授權用戶可寫
password-db = passwd           # 密碼文件路徑,相對於當前目錄
authz-db = authz               # 訪問控制文件
realm = /var/opt/svn/svn       # 認證命名空間,會在認證提示界面顯示,並作為憑證緩存的關鍵字,可以寫倉庫名稱比如svn

配置賬號與密碼,修改 passwd文件,格式為“賬號 = 密碼”

[users]
# harry = harryssecret
# sally = sallyssecret
admin = 123456

配置賬戶權限,修改 authz文件

[groups]
owner = admin
[/]               # / 表示所有倉庫
admin = rw        # 用戶 admin 在所有倉庫擁有讀寫權限
[svn:/]           # 表示以下用戶在倉庫 svn 的所有目錄有相應權限
@owner = rw       # 表示 owner 組下的用戶擁有讀寫權限

拉取svn

svn co svn://127.0.0.1:3690/svn


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM