基于docker构建jenkins和svn服务

简介:

基于docker构建jenkins和svn服务

码农们很定都知道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

  1. 用该编排文件启动服务
    3
  2. 找到服务的节点IP,用http://节点IP:8080/访问jenkins服务
    4
  3. 在jenkins上创建一个新项目,用link名访问svn
    5
目录
相关文章
|
5月前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
545 2
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
5月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
455 100
|
5月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
420 99
|
5月前
|
缓存 前端开发 Docker
Docker Layer Caching:加速你的容器构建
Docker Layer Caching:加速你的容器构建
|
5月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
5月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
261 8
|
jenkins Devops Java
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第27天】在快速发展的软件开发领域,DevOps实践日益重要。Jenkins作为一款流行的开源自动化服务器,在持续集成(CI)和持续部署(CD)中扮演关键角色。本文通过案例分析,探讨Jenkins在Java项目中的应用,展示其自动化构建、测试和部署的能力,提高开发效率和软件质量。
454 2
|
12月前
|
监控 jenkins Shell
jenkins结合gitlab实现CI(持续集成)
通过本文的介绍,我们详细了解了如何结合Jenkins和GitLab实现持续集成。从环境准备、插件配置到Pipeline任务创建和CI流程监控,每一步都提供了详细的操作步骤和示例代码。希望本文能帮助开发者快速搭建起高效的CI系统,提高项目开发效率和代码质量。
1218 9
|
Java jenkins 持续交付
Jenkins集成Maven
通过以上步骤,可以在Jenkins中成功集成Maven,实现自动化构建和部署。通过定时构建、SCM轮询等方式,可以确保代码库中的最新变更能够及时构建和测试,提高开发效率和代码质量。这种集成方式在实际项目中具有广泛的应用前景,能够显著提升团队的协作效率。
469 8