docker安裝svn


鏡像下載

docker search svn
docker pull docker.io/garethflowers/svn-server
docker images

運行容器

docker run -v /opt/data/svn/repo:/var/opt/svn --name svn-server -p 3690:3690 --privileged=true -e SVN_REPONAME=repository -d docker.io/garethflowers/svn-server

-name 重命名
-e傳遞key-value形式的環境變量,這里指定倉庫名為 repository
-v /opt/data/svn/repo:/var/opt/svn 將容器/var/opt/svn 目錄下的內容,掛載到宿主機/opt/data/svn/repo 下,且刪除容器不會刪除宿主機內容
-d 后台運行,守護線程
--privileged=true 指定容器是否為特權容器,特權容器擁有所有的capabilities

進入容器容器進行配置

##進入容器內部
docker exec -it svn-server /bin/sh  
## 創建倉庫  創建了一個為repository 的倉庫
svnadmin create /var/opt/svn/repository
##進入倉庫配置文件路徑
cd /var/opt/svn/repository/conf

vi svnserve.conf 編輯資源庫配置

 

 vi passwd 編輯密碼文件,添加用戶,保存

 

 vi authz 編輯權限相關配置

 

 

exit
docker restart svn-server
重啟svn 客戶端

電腦安裝svn客戶端,並且連接

    安裝svn 客戶端,url為:svn://ip地址/repository
    用戶為user1 密碼為123

⑤svn上傳一個文件,並且刪除svn容器,再安裝看看數據是否丟失

    安裝svn 客戶端,url為:svn://ip地址/repository

用戶為user1 密碼為123

 

 刪除容器
docker rm -f svn-server

重新按照上面的安裝步驟,直接運行,無需再次修改配置文件。然后svn連接,發現文件還在,掛載成功!

總結:
1.docker 容器掛載不會刪除宿主機數據
2.凡是涉及到存儲數據相關的,比如mysql,svn等 都要進行數據掛載,不能放在容器里面,否則容器刪除就找不回來了


免責聲明!

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



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