创建目录
服务器地址:192.168.170.88
同Gitlab一样在宿主机上创建个存放数据的目录
mkdir -p /usr/local/docker/jenkins_docker/data
编写docker-compose.yml
切换到data的上一级目录jenkins_docker
cd /usr/local/docker/jenkins_docker/
编写容器组,这台服务器只给Jenkins用,所以这里端口映射我没有更改端口了
version: "3.1"
services:
jenkins:
image: jenkins/jenkins:2.401.3-lts
restart: always
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/
给挂载目录权限(必须,不然启动Jenkins报错)
chmod -R 777 data/
启动容器组
docker compose up -d
登录Jenkins
访问部署的IP+端口(192.168.170.88:8080)
同Gitlab一样,首次登录需要去查看初始密码
/var/jenkins_home目录挂载在宿主机的/usr/local/docker/jenkins_docker/data/
直接在宿主机上查看
cat /usr/local/docker/jenkins_docker/data/secrets/initialAdminPassword
复制初始密码去登录Jenkins
接着来到安装插件页面,也已选择推荐的插件安装也可以手动选择安装,或者直接右上角叉掉跳过
登录第一件事,还是先把密码修改掉
安装插件
为后续准备,需要用到Git Parameter、Publish Over SSH插件
Dashboard > 系统管理 > 插件管理,搜索上面两个插件点击安装,勾上安装完自动重启。
JDK、Maven安装
我这里是通过本地下载好后,通过SFTP上传至服务器的
你服务器网络好的话可以在设置里面勾上自动安装
[root@jenkins ~]# ls
apache-maven-3.6.3-bin.tar.gz jdk-8u231-linux-x64.tar.gz
JDK和Maven解压到/usr/local/目录下
tar -zxvf apache-maven-3.9.6-bin.tar.gz -C /usr/local/
tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local/
修改目录名称,默认名称+版本号太长了
cd /usr/local/
mv apache-maven-3.9.6 maven
mv jdk1.8.0_231 jdk1.8
解压好修改名称后,再把JDK和Maven移到Jenkins里面去
jenkins的jenkins_home目录挂载宿主机的/usr/local/docker/jenkins_docker/data/目录的,移到这里面就等于移到容器里面了。
cd /usr/local/docker/jenkins_docker/data/
mv /usr/local/maven/ ./
mv /usr/local/jdk1.8/ ./
Jenkins配置JDK、Maven
去到Dashboard > 系统管理 > 全局工具配置
新增JDK,别名取个有意义的就行,JAVA_HOME设置成我们的JDK位置(注意:这里得填容器里面的位置,不能是宿主机的)
我们放到了宿主机的/usr/local/docker/jenkins_docker/data/位置,对应挂载的是Jenkins容器的/var/jenkins_home/位置
所以这里直接填/var/jenkins_home/jdk1.8,当然这里的路径填错了会报错的,识别到了目录才行。
同样Maven也是这样添加,路径/var/jenkins_home/maven,前面说了也可以在设置里面勾选自动安装的方式如下图中的“自动安装”