码农们很定都知道svn的重要性,机器坏掉丢代码的惨痛教训想必很多人都有。

jenkins可能很多人都不了解。这是一个持续集成的工具,在敏捷开发领域很流行;跟svn结合可以实现定期build、checkin之后build等功能。介绍可以看这里https://www.ibm.com/developerworks/cn/java/j-lo-jenkins/

基于docker单独部署jenkins和svn都是很简单的事情,找到image,配置端口、配置volume,完事。

这篇文章主要介绍如何把两个服务连起来。

link是docker提供的重要工具,它提供类似名字服务的功能,link起来的容器可以通过名字标识访问。
下面这篇文章详细介绍了link的使用方法和原理。http://dockerpool.com/static/books/docker_practice/network/linking.html

编排文件

用编排文件来描述互相依赖的服务是推荐的方式。这两个服务的编排文件如下。

jenkins:
image: 'jenkins:latest'
labels:
aliyun.scale: '1'
#端口映射。8080使用户访问的端口,50000是与svn交互的端口。不过这个例子中我们没有使用。
#另外,实际部署是需要添加volume
ports:
- '50000:50000/tcp'
- '8080:8080/tcp'
restart: always
#使用link之后,可以用svn这个名字访问svn
links:
- svn:svn svn:
environment:
- SVN_REPONAME=repos
image: 'erikxiv/subversion:latest'
labels:
aliyun.scale: '1'
ports:
- '3690:3690/tcp'
restart: always

部署步骤

下面以阿里云容器服务为例,介绍一下部署过程
1. 创建编排文件,输入上面的文件内容

    1. 用该编排文件启动服务

    2. 找到服务的节点IP,用http://节点IP:8080/访问jenkins服务

    3. 在jenkins上创建一个新项目,用link名访问svn

http://yq.aliyun.com/articles/1830?spm=5176.100239.yqblog1.107.lyqEQr

基于docker构建jenkins和svn服务(转)的更多相关文章

  1. 基于Docker构建Jenkins CI平台

    1.部署gitlab 1.1 部署gitlab docker run -d \ --name gitlab \ -p 8443:443 \ -p 9999:80 \ -p 9998:22 \ -v $ ...

  2. DevOps实践之一:基于Docker构建企业Jenkins CI平台

    基于Docker构建企业Jenkins CI平台 一.什么是CI 持续集成(Continuous integration)是一种软件开发实践,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来 ...

  3. Docker从入门到掉坑(二):基于Docker构建SpringBoot微服务

    本篇为Docker从入门到掉坑第二篇:基于Docker构建SpringBoot微服务,没有看过上一篇的最好读过 Docker 从入门到掉坑 之后,阅读本篇. 在之前的文章里面介绍了如何基于docker ...

  4. QCon技术干货:个推基于Docker和Kubernetes的微服务实践

    2016年伊始,Docker无比兴盛,如今Kubernetes万人瞩目.在这个无比需要创新与速度的时代,由容器.微服务.DevOps构成的云原生席卷整个IT界.在近期举办的QCon全球软件开发大会上, ...

  5. 视频私有云实战:基于Docker构建点播私有云平台

    私有云是为一个客户单独使用而构建的,因而提供对数据.安全性和服务质量的最有效控制.前置条件是客户拥有基础设施,并可以使用基础设施在其上部署应用程序.其核心属性是专有的资源.本篇文章将会结合网易云信的实 ...

  6. 滴滴出行基于RocketMQ构建企业级消息队列服务的实践

    小结: 1. https://mp.weixin.qq.com/s/v6NM3UgX-qTI7yO1QPCJrw 滴滴出行基于RocketMQ构建企业级消息队列服务的实践 原创: 江海挺 阿里巴巴中间 ...

  7. 【docker构建】基于docker构建wordpress博客网站平台

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用. WordPre ...

  8. 基于 Docker 构建企业 Jenkins CI平台

    持续集成(Continuous Integration,CI):代码合并.构建.部署.测试都在一起,不断地执行这个过程,并对结果反馈. 持续部署(Continuous Deployment,CD):部 ...

  9. Ubuntu系统下基于docker部署Jenkins环境

    本文是在ubuntu环境下安装jenkins,jenkins运行在docker容器中, 至于docker如何安装,请参考https://www.cnblogs.com/xingyunqiu/p/115 ...

随机推荐

  1. 解决错误 fatal error C1010: unexpected end of file while looking for precompiled head

    在编译VS时候,出现fatal error C1010: unexpected end of file while looking for precompiled head. 问题详解:致命错误C10 ...

  2. ubuntu 系统设置bugzilla制

    随着时间的推移.在大脑中形成的记忆总会慢慢的淡去.人的记忆力就是这样.所以最好的办法就是形成博客去记录下来,一方面给自己以后回想用.一方面也算是自己的一个积累.所以一旦选择了一个行业,最好不要轻 易转 ...

  3. contextmenu

    void Loaded(object sender, RoutedEventArgs e) { ContextMenu contextMenu = new ContextMenu(); context ...

  4. Mybatis数据操作

    Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作   详细的Spring MVC框架搭配在这个连接中: Maven 工程下 Spring MVC 站点配置 (一) M ...

  5. Android_declare-styleable_自己定义控件的属性

    1.简单实例 (1).在res/values文件下定义一个attrs.xml文件 <? xml version="1.0" encoding="utf-8" ...

  6. JSF教程(9)——生命周期之Process Validations Phase

    在这个过程其中JSF的实现者使用processValidators方法处理全部在tree中的组件中注冊的验证器.验证的过程就是通过每一个组件已有的规则对其已经保存的值进行校验,同一时候也对输入的值进行 ...

  7. 深入探索C++对象模型-语义

    有三种情况,这将是一个object的内容,以及一class object早期值: class X { ... }; X x; X xx = x;               // 情况1,赋值对象 e ...

  8. 关闭 sqlserver提示信息

  9. WPF3D学习,立方体的绘制

    原文:WPF3D学习,立方体的绘制 以此为一个好的开始吧!一直都太懒,坚持写文章是个不错的开始!碰巧最近在研究WPF3D这块的知识,也为了练练自己的写作水平,整理这篇文章.新手上路,多多关照! 本文先 ...

  10. 【原创】leetCodeOj --- Find Minimum in Rotated Sorted Array II 解题报告

    题目地址: https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/ 题目内容: Suppose a sort ...