zoukankan      html  css  js  c++  java
  • Docker搭建SvnServer

    下载svn-server官方镜像

    docker pull garethflowers/svn-server
    

    运行svn-server容器

    docker run  -v /home/svn:/var/opt/svn  --name svn-server  -p 3690:3690  --privileged=true  -e SVN_REPONAME=repository  -d docker.io/garethflowers/svn-server
    
    • -v /home/svn:/var/opt/svn:将容器的/var/opt/svn文件夹下的内容映射到宿主机的/home/svn文件夹下面

    • --name svn-server:容器取名为svn-server

    • -p 3690:3690:将容器的3690端口映射到宿主机器的3690

    • --privileged=true:将容器以特权方式启动

    • -e SVN_REPONAME=repository:环境变量,这里指定svn仓库名称为repository

    创建一个svn仓库

    • 进入容器内部
    docker exec -it svn-server /bin/sh
    
    • 创建一个名为test-repo的仓库
    svnadmin create /var/opt/svn/test-repo
    
    • 退出容器,回到宿主机
    exit
    
    • 修改仓库的配置信息
      进入/home/svn这个目录,可以看到有一个名为test-repo的文件夹
    cd /home/svn
    

    进入test-repo/conf文件夹内部,可看到如下文件夹:

    svnserve.conf:用来配置仓库

    passwd:管理用户

    authz:配置用户组;配置仓库访问权限

    cd test-repo/
    cd conf/
    

    用vi打开svnserve.conf,修改仓库配置

    vi  svnserve.conf
    

    去掉以下三处的注释,注意行头不要留空格:

    修改完毕之后保存并退出vi:

    :wq
    

    用vi打开passwd,添加一个名为test的用户,注意行头不要留空格,等号(=)前后建议加空格,修改完之后保存并退出vi:

    vi passwd
    

    用vi打开authz,添加一个名为test-group的用户组,并为该用户组设置仓库的读写权限,修改完毕保存并退出vi:

    vi authz
    

    [groups]
    #harry_and_sally = harry,sally
    #harry_sally_and_joe = harry,sally,&joe
    
    #新建一个名为test-group的用户组,并把名为test的用户加入到用户组。若多个用户需要加入用户组,用英文逗号分隔
    test-group = test
    
    #设置test-group用户组对仓库test-repo的读写权限
    [test-repo:/]
    @test-group = rw
    
    

    使用SVNClient工具检出test-repo

    本文使用SnailSvn作为SVNClient工具

    新建temp文件夹,然后点击svn检出

    版本库地址:svn://宿主机ip/test-repo

    点击左下角的「小锁」,配置用户名和密码

    用户名:test

    密码:test

    成功连接到了仓库,并在temp文件夹下面创建了一个隐藏的.svn文件夹:

    docker异常退出了怎么办

    docker异常退出、宿主机断电了或宿主机操作系统损坏了怎么办?

    因为svn-server中的文件已经映射到了宿主机器,所以只要文件还在,修复好docker运行环境之后,重新执行docker run命令即可正常访问。

    引用

  • 相关阅读:
    Python爬虫基础——re模块的提取、匹配和替换
    Python爬虫基础——正则表达式
    Python爬虫基础——HTML、CSS、JavaScript、JQuery网页前端技术
    Python——面向对象(类)的基础疑难点
    简单易懂的ftp脚本自动登录教程
    如何完成述职报告或年终总结PPT
    nmon脚本——对Linux服务器的监控
    记——第一次服务器被挖矿
    vsftpd超实用技巧详解
    MySQL、Oracle、SqlServer的区别
  • 原文地址:https://www.cnblogs.com/Naylor/p/13740924.html
Copyright © 2011-2022 走看看