设置卷位置
# 在/srv目录创建一个名为jenkins的文件夹
mkdir /opt/jenkins
mkdir /opt/jenkins/data
编写docker-compose.yml文件
docker-compose.yml文件放在 /opt/jenkins 目录下
version: '3'
services:
jenkins:
image: jenkins/jenkins:latest
container_name: jenkins_instance
user: root # 设置容器内运行的用户,Jenkins官方推荐使用jenkins用户,但在某些场景下可能需要root权限
restart: unless-stopped
ports:
- "8080:8080" # 将容器的8080端口映射到主机的8080端口
- "50000:50000" # Jenkins agent通信端口
volumes:
- /opt/jenkins/data:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
- /usr/lib/jvm/jdk-17-oracle-x64:/usr/lib/jvm/jdk-17-oracle-x64
- $MAVEN_HOME:/usr/local/apache-maven-3.9.6
安装jdk
dnf install jdk-17_linux-x64_bin.rpm
安装maven
# 解压到指定位置
tar -zxvf apache-maven-3.9.6-bin.tar.gz -C /usr/local/
# 设置环境变量
vim /etc/profile
# 在文件最后添加
export MAVEN_HOME=/usr/local/apache-maven-3.9.6
export PATH=$MAVEN_HOME/bin:$PATH
# vim保存修改
:wq
# 更新环境文件
source /etc/profile
下载jenkins镜像
docker pull jenkins/jenkins
运行jenkins
docker compose up -d
开放linux防火墙端口
# 开放9080端口,permanent永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=9080/tcp --permanent
# 更新防火墙规则
firewall-cmd --reload
# 查看端口是否已开放
firewall-cmd --zone=public --list-ports
查看当前服务器IP,并使用8080端口访问
ip addr
查看jenkins初始密码,并登录jenkins
cat /opt/jenkins/data/secrets/initialAdminPassword