构建部署_Jenkins介绍与安装

构建部署_Jenkins介绍与安装

构建部署_Jenkins介绍与安装

Jenkins介绍

Jenkins是一个可扩展的持续集成引擎。

持续集成,就是通常所说的CI(Continues Integration),可以说是现代软件技术开发的基础。

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也意味着每天可能会发生多次集成。

每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。


Jenkins安装

  • 搜索 Jenkins 镜像,选择合适的镜像
powershell 复制代码
[root@localhost docker]# docker search jenkins
  • 拉取镜像
powershell 复制代码
[root@localhost docker]# docker image pull jenkins/jenkins
  • 创建 Jenkins 挂载目录并赋予权限
powershell 复制代码
cd /usr/local
mkdir jenkins
  • 创建并启动 Jenkins 容器(直接复制下面代码到终端)
powershell 复制代码
docker run -d \
    -p 9001:8080 \
    -p 50000:50000 \
    -v /usr/local/jenkins:/var/jenkins_home \
    -v /etc/localtime:/etc/localtime \
    --privileged=true \
    --restart=always \
    --name=jenkins \
    jenkins/jenkins 

-d:后台运行容器;

-p 9001:8080:将容器的 8080 端口映射到服务器的 9001 端口;

-p 50000:50000:将容器的 50000 端口映射到服务器的 50000 端口 好像与jenkins相关;

-v /usr/local/jenkins:/var/jenkins_home:将容器中 Jenkins 的工作目录挂载到服务器的 /usr/local/jenkins;

-v /etc/localtime:/etc/localtime:让容器使用和服务器同样的时间设置;

--privileged=true: 设置权限

--restart=always:设置容器的重启策略为 Docker 重启时自动重启;

--name=jenkins:给容器起别名

jenkins/jenkins:镜像名称

  • 查看容器
powershell 复制代码
docker ps -la
  • 重新启动jenkins
powershell 复制代码
docker run -d jenkins/jenkins 
  • 查看启动日志
powershell 复制代码
docker logs jenkins

查看日志报错

touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

INSTALL WARNING: User: missing rw permissions on JENKINS_HOME: /var/jenkins_home

touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

解决措施:

给目录授权:/usr/local/jenkins

root@localhost local\]# chown -R 1000 /usr/local/jenkins/

  • 然后启动jenkins
powershell 复制代码
[root@localhost local]# docker start jenkins
  • jenkins国内镜像加速
powershell 复制代码
cd /usr/local/jenkins
cat hudson.model.UpdateCenter.xml
  • 将此文件的url替换为
powershell 复制代码
[root@localhost jenkins]# vi hudson.model.UpdateCenter.xml 
  • 重启jenkins
powershell 复制代码
docker start jenkins

这里要注意

192.168.160.129 :IP是虚拟机的IP

9001:端口要下面执行命令的端口要一致

docker run -d

-p 9001 :8080

-p 50000:50000

-v /usr/local/jenkins:/var/jenkins_home

-v /etc/localtime:/etc/localtime

--privileged=true

--restart=always

--name=jenkins

jenkins/jenkins

  • 将密码复制粘贴进入,点继续,路径具体看安装路径
powershell 复制代码
 [root@localhost local]# cat /usr/local/jenkins/secrets/initialAdminPassword
  • 点击安装推荐的插件



相关推荐
Otaku love travel3 分钟前
老系统改造增加初始化,自动化数据源配置(tomcat+jsp+springmvc)
java·tomcat·初始化·动态数据源
DKPT17 分钟前
Java设计模式之行为型模式(责任链模式)介绍与说明
java·笔记·学习·观察者模式·设计模式
L_autinue_Star32 分钟前
手写vector容器:C++模板实战指南(从0到1掌握泛型编程)
java·c语言·开发语言·c++·学习·stl
晨岳1 小时前
CentOS 安装 JDK+ NGINX+ Tomcat + Redis + MySQL搭建项目环境
java·redis·mysql·nginx·centos·tomcat
执笔诉情殇〆1 小时前
前后端分离(java) 和 Nginx在服务器上的完整部署方案(redis、minio)
java·服务器·redis·nginx·minio
YuTaoShao1 小时前
【LeetCode 热题 100】24. 两两交换链表中的节点——(解法一)迭代+哨兵
java·算法·leetcode·链表
程序员的世界你不懂1 小时前
(20)Java+Playwright自动化测试- 操作鼠标拖拽 - 上篇
java·python·计算机外设
AI360labs_atyun2 小时前
Java在AI时代的演进与应用:一个务实的视角
java·开发语言·人工智能·科技·学习·ai
chevysky.cn2 小时前
Elasticsearch部署和集成
大数据·elasticsearch·jenkins
不像程序员的程序媛2 小时前
redis的一些疑问
java·redis·mybatis