使用Docker安装Jenkins

Jenkins

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

环境准备

腾讯云

硬件配置:2核4G 1M带宽。50G硬盘。

系统配置:CentOS 7.2

Docker安装

请移步查看:CentOS 7 安装 Docker

安装Jenkins

首先不直接从Docker Store上直接Pull Jenkins 的 Image 文件,因为待会需要进行dotnet core 的 Docker自动部署,需要对宿主机上的Docker进行直接操作,那么需要挂载 Docker 给 Jenkins Image,所以现在需要自己动手编写 Dockerfile 构建自定义的Jenkins。

1.新建Dockerfile

touch Dockerfile
vim Dockerfile

2.加入以下内容:

FROM jenkins

USER root
#清除了基础镜像设置的源,切换成腾讯云的jessie源
#使用非腾讯云环境的需要将 tencentyun 改为 aliyun
RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list \
  && echo "deb http://mirrors.tencentyun.com/debian jessie main contrib non-free" > /etc/apt/sources.list \
  && echo "deb http://mirrors.tencentyun.com/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list \
  && echo "deb http://mirrors.tencentyun.com/debian-security jessie/updates main contrib non-free" >> /etc/apt/sources.list
#更新源并安装缺少的包
RUN apt-get update && apt-get install -y libltdl7 && apt-get update

ARG dockerGid=999

RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group 

# 安装 docker-compose 因为等下构建环境的需要
RUN curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

RUN chmod +x /usr/local/bin/docker-compose

3.构建image

docker build . -t auto-jenkins

等待时间可能有点长,请耐心等待。

出现以上 Successfully 内容代表安装Jenkins成功

4.在启动Jenkins时,需要先创建一个Jenkins的配置目录,并且挂载到docker 里的Jenkins目录下

mkdir -p /var/jenkins_home

5.修改目录权限(很重要!)

chown -R 1000 /var/jenkins_home

6.运行 Jenkins

docker run --name jenkins -p 8080:8080 -p 50000:50000 \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v $(which docker):/bin/docker \
    -v /var/jenkins_home:/var/jenkins_home \
    -d auto-jenkins

出现一串很长的字符串以后,我们的jenkins已经成功启动:

通过命令docker ps查看运行的镜像:

配置Jenkins

访问http://<你的ip>:8080访问Jenkins。如果无法访问请检查系统防火墙、云的安全组设置。

可以看到需要我们输入密码。

首选进入容器:

docker exec -it jenkins /bin/bash

然后查看密码:

cat /var/jenkins_home/secrets/initialAdminPassword

复制输出的内容,粘贴到Administrator password,输入 exit 退出容器,此时进行下一步你会看到此界面,点击 Install suggested plugins

等待安装完毕:

如果有插件安装失败,不用紧张,安装结束之后会有"Retry”重试选项,点击重试即可。

漫长的等待之后到了下一步:

根据表单填写信息之后就结束了!

进入主界面后如果看到右上角有错误的提示信息,那么请把你的Jenkins升级到最新版本,然后更新一下插件。

如果更新之后出现协议警告:

我们可以直接点击警告中的Protocol Configuration,或者点击系统管理—>全局安全配置—>Agents—>Agent protocols

将那两项取消勾选即可。

配置加速器

【系统管理】-> 【插件管理】-> 【高级】-> 【升级站点】

更换地址:http://mirror.xmission.com/jenkins/updates/current/update-center.json

至此Jenkins的配置就结束了!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

如何在Ubuntu 18.04上使用Traefik作为Docker容器的反向代理

Docker可以是在生产中运行Web应用程序的有效方法,但您可能希望在同一个Docker主机上运行多个应用程序。在这种情况下,您需要设置反向代理,因为您只想公开...

52820
来自专栏拂晓风起

windows server 2003 新安装IIS后出现 service unavailable

15320
来自专栏熊二哥

SpringBoot详细研究-04部署测试与监控

这部分的内容实际就是devops的主要工作内容,当然一名合格的程序要也需要掌握这部分的知识。 ? ? 热部署 简单来说,在开发时,修改了任何的代码,I...

26090
来自专栏jeremy的技术点滴

docker排雷记

35030

20分钟搞定——通过Docker部署Spring Boot应用程序到Bluemix云计算平台

我很想了解关于 Java 中 Spring 框架的更多内容。借 Spring 之势来构建企业应用程序,其简单性使得它非常有趣。于是我着手实践了一个简单的教程,并...

32580
来自专栏码神联盟

框架 | SpringBoot项目发布到自动化容器Docker步骤

56630
来自专栏吴伟祥

IntelliJ IDEA快速实现Docker镜像部署 顶

1、新建一个Spring Boot工程,在工程里写一个REST接口,如下,简单返回一个字符串。

90630
来自专栏云计算教程系列

如何在Ubuntu 16.04上使用Docker Swarm安装和保护OpenFaaS

无服务器架构从开发人员隐藏服务器实例,并且通常公开允许开发人员在云中运行其应用程序的API。这种方法可以帮助开发人员快速部署应用程序,因为他们可以将配置和维护实...

50910
来自专栏恰童鞋骚年

Java微服务之Spring Boot on Docker

本文学习前提:Java, Spring Boot, Docker, Spring Cloud

31240
来自专栏bboysoul

在docker中使用MySQL数据库

我是一直想把所有的程序都跑在docker里面,这样一方面是为了便于管理,另外一方面也可以增强自己对docker的理解,所以今天我就想学习一下最重要的数据库部分

16220

扫码关注云+社区

领取腾讯云代金券