Docker安装Jenkins

82 阅读1分钟

设置卷位置

# 在/srv目录创建一个名为jenkins的文件夹
mkdir /opt/jenkins
mkdir /opt/jenkins/data

编写docker-compose.yml文件

docker-compose.yml文件放在 /opt/jenkins 目录下

image.png

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

image.png

查看jenkins初始密码,并登录jenkins

cat /opt/jenkins/data/secrets/initialAdminPassword

image.png

创建管理员账户

image.png

配置访问地址

image.png

重启等待重新进入

image.png

image.png