Skip to main content

连接内网 SVN 仓库

通过在 CentOS 7 系统以容器方式部署 SVN 为例,演示用户怎样通过互联网访问内网 SVN 提交代码更新。

先决条件

  1. 拥有一个有效的 ZeroNews 账户

第 1 步: 以容器方式部署 SVN

  1. 创建 SVN 容器的配置文件目录及数据存储目录。
svn文件: /opt/docker/svn/
mkdir -p /opt/docker/svn
  1. 运行 svn 容器, 映射 SVN 容器端口 3690:3690
docker run -d --name svn-server -v /opt/docker/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server

创建 SVN 仓库 repo
docker exec -it svn-server svnadmin create repo

修改 svn 配置
/opt/docker/svn/repo/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

创建 svn 用户
/opt/docker/svn/repo/conf/passwd
[user] # 标签下添加用户
user01 = 123456

用户授权
/opt/docker/svn/repo/conf/authz
[repo:/]
user01 = rw

第 2 步:生成 ZeroNews 客户端所需的 Token

用户登录 ZeroNews 平台,在设备菜单的 Token 页面生成 Token。生成完毕后,复制生成的 Token 备用。

第 3 步:运行 ZeroNews 客户端

参考 Linux 中运行 ZeroNews , 在 Linux 服务器上运行 ZeroNews,绑定 Token, 完成 ZeorNews 客户端上线。

第 4 步: 为 svn 分配 ZeroNews 公网域名

  1. 用户登录 ZeroNews 平台,在 "资源" 的 "域名" 管理页面, 点击 "添加域名" 添加公网可访问的域名。
  • 生效设备: 选择对应的 Linux ZeroNews 设备。
  • 域名前缀: 用户输入定义的 域名前缀,如 svnmt

  1. 添加访问 svn 公网端口号
  • 勾选 TCP 复选框,输入 TCP 端口号,如 13690

svn 公网访问域名端口创建成功后,可在端口列表中查看用于连接的 TCP 域名端口地址。

第 5 步:为 svn 添加公网映射

  1. 进入"应用"页面,点击 "添加应用" 添加 svn 应用。
  • 应用名称: 如输入 svn

  1. 应用添加完成后, 在应用的下拉列表中,添加 svn 映射
  • 映射协议:选择 TCP 协议
  • 公网访问地址:选择 svn 域名, svnmt.center.takin.cc:13690
  • 映射带宽: 分配带宽,不大于用户当前的最大可用带宽
  • 内网映射地址:内网IP地址默认输入 127.0.0.1 内网端口输入 svn 容器映射的端口号 3690

映射添加完成后,可在应用详情中可查看添加好的映射列表。

第 6 步:连接 SVN 服务

使用 TortoiseSVN 客户端连接 SVN 服务器,输入公网域名地址和端口号 svnmt.center.takin.cc:13690即可连接。