====== Subversion Edge(Docker) ======
**這 Subversion Edge 軟體似乎已不再維護, 請謹慎使用**
* 其實我只是想將原本安裝在 CentOS 7 內的 [[centos7_svn|subversion + submin]] + [[tech/viewvc|viewvc]] 移轉到 Docker 環境, 後來找到 [[https://hub.docker.com/r/mamohr/subversion-edge|mamohr/subversion-edge]] 這 Docker Image 方案
===== 安裝方式 =====
* 安裝環境 : [[tech/alpine_docker|Alpine 3 + Docker compose]]
* 掛載一個獨立硬碟存放 svn 相關檔案, 掛載路徑 /svn
- 編輯 docker-compose.yml
version: '2'
services:
subversion:
image: mamohr/subversion-edge
container_name: svn-server
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Taipei
ports:
- '3343:3343'
- '4434:4434'
- '18080:18080'
restart: always
volumes:
- '/svn/svn-data:/opt/csvn/data'
- 啟動服務
docker compose up -d
- 連上管理介面 Exp. http://192.168.11.242:3343 (admin/admin)
- 透過 [[tech/nginx_proxy_manager|Nginx Proxy Manager(NPM)]] 進行 svn repo 服務與管理網頁 Reverse Proxy 設定
* Exp. **svn repo 服務** -> https://svn.my.ichiayi.com/svn , **viewvc 服務** -> https://svn.my.ichiayi.com/viewvc
* 設定畫面 \\ {{:tech:螢幕擷取畫面_2024-03-02_152002.png|}}
* Exp. **管理網頁** -> https://svn_adm.my.ichiayi.com/
* 設定畫面 \\ {{:tech:螢幕擷取畫面_2024-03-02_152300.png|}}
===== 移轉原本 svn repo 方式 =====
* 如果原本 svn repo 的目錄結構單純(沒有自己設定子目錄), 只要
- 在舊主機將每個 repo 目錄 tar 起來 Exp. jonathan
tar -cvf jonathan.tar jonathan/
- 複製 tar 檔到新主機的 /svn/svn-data/repositories 目錄內
scp jonathan.tar 192.168.11.242:/svn/svn-data/repositories/
- 在新主機解開 tar 檔
tar -xvf jonathan.tar
- 修改目錄檔案權限
chown -R 1000:1000 jonathan
- 透過管理介面掃描 [Repositories] -> [Discover] \\ {{:tech:螢幕擷取畫面_2024-03-02_154717.png|}}
{{tag>svn subversion docker}}