随着公司的项目逐步增多,gitlab上提交的代码逐步增多,仅靠master分支很难有效的管理,此时把公司的代码分支分为dev和master两个分支,开发人员在dev分支上不停的迭代,每一个稳定的版本合并到master分支,此时涉及到大量的部署工作了(因为项目是基于springcloud的微服务方式,部署的微服务非常多,一个个手工部署已经很难满足实际业务了,单体应用还可以继续手工部署)。
1、docker下下载jenkins的images镜像
docker pull jenkins/jenkins
2、
docker run -d -p 80:8080 -p 50000:50000 -v jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins docker.io/jenkins/jenkins
这里逐条解释下各参数的意义。
-d 后台运行镜像
-p 80:8080 将镜像的8080端口映射到服务器的80端口
-p 50000:50000 将镜像的50000端口映射到服务器的50000端口
-v jenkins:/var/jenkins_home /var/jenkins_home目录为jenkins工作目录,我们将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录。
-v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置。
--name jenkins 给容器起一个别名
配置Jenkins:
在浏览器输入http://ip:8080进入Jenkins登录页面。页面会提示你到服务器的指定位置获取初始化密码。
也可以采用其他方式:
dockers 安装centos7的镜像
docker pull centos7
docker run -d -it <imageID> /bin/bash
然后和其他centos操作一样,如先更新阿里源,安装jdk-1.8.0, tomcat, jenkins的安装包
docker exec -it <容器ID> /bin/bash
cd /etc/yum.repos.d/
mkdir bk
mv *.repo bk/
wget http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
yum install jdk-1.8.0*
yum install tomcat
cd /usr/share/tomcat/webapps
wget . http://mirrors.jenkins-ci.org/war/latest/jenkins.war
重要(可能之前走错的路):
如果发现之前端口不对,需要端口重新映射,可以利用docker commit新构镜像
docker commit 容器ID newImage
docker run -p 端口:端口 newImage
如果发现装的centos不能使用systemctl,需要重新启动下容器
docker run --privileged -ti -d -it 镜像ID /usr/sbin/init
网友评论