Docker-Svn-Server

docker运行安装svn服务器

elleflorio/svn-server

1
2
3
4
5
6
7
8
9
10
11
version: '3'

services:
svn:
restart: always
image: elleflorio/svn-server
volumes:
- /dockerdata/v-svn:/home/svn
ports:
- "14009:3690"
- "14008:80"
  1. 创建仓库,进入容器执行svnadmin create --pre-1.6-compatible /home/svn/rep不考虑兼容,可以不加--pre-1.6-compatible

  2. 添加用户名和密码htpasswd -bc /etc/subversion/passwd lx 123456 其中lx是用户名,123456是密码,其中httpasswd命令参数

    1
    2
    3
    4
    5
    6
    7
    8
    -c:创建一个加密文件;
    -n:不更新加密文件,只将加密后的用户名密码显示在屏幕上;
    -m:默认采用MD5算法对密码进行加密;
    -d:采用CRYPT算法对密码进行加密;
    -p:不对密码进行进行加密,即明文密码;
    -s:采用SHA算法对密码进行加密;
    -b:在命令行中一并输入用户名和密码而不是根据提示输入密码;
    -D:删除指定的用户。
  3. 然后访问192.168.1.230:14008/svn就会弹出输入用户名和密码窗口

  4. 使用svn客户端输入http://192.168.1.230:14008/svn/rep/就可以检出了

注意

  1. 由于配置文件放在容器的,因此容器重启会重新设置密码

    解决:

    1. 挂载密码的文件目录
    2. 重新编译dockerfile

参考:5-使用docker-svn镜像