> 文章列表 > linux服务器上Docker中安装jenkins

linux服务器上Docker中安装jenkins

linux服务器上Docker中安装jenkins

前言

Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。
本文主要提供通过docker安装jenkins镜像,并配置nginx反向代理页面配置和使用。通过jenkins完成项目的自动部署。

我在安装之前看了很多文章又说需要什么jdk环境 maven环境的等等,后来发现没有那么复杂

在这里插入图片描述


服务器上Docker安装jenkins

  • 前言
  • 1 环境配置
    • 操作系统版本:
    • Docker 版本:
    • Jenkins 版本:
  • 2 Docker安装Jenkins
    • 删除旧版本
    • 删除镜像:
    • Docker下载Jenkins
    • 查看Jenkins镜像
    • 创建一个jenkins目录
    • 安装启动Jenkins容器
    • 查看Jenkins启动情况
  • 安装过程遇到的小问题
    • Jenkins容器docker run之后状态总是Exited
    • 重启容器
    • 宿主主机端口要开启
  • 访问Jenkins
  • 管理配置Jenkins
    • 解锁
    • 安装插件
    • 管理用户创建
    • Jenkins配置完成

1 环境配置

操作系统版本:Linux version 5.10.60-9.al8.x86_6 或 Linux version 5.4.0-110-generic (buildd@ubuntu)
Docker 版本:23.0.1 或 20.10.12
Jenkins 版本:2.375.3

演示是上面版本,其它版本可能也同样适用,或者微调

操作系统版本:

cat /proc/version

在这里插入图片描述

Docker 版本:

docker -v

linux服务器上Docker中安装jenkins

Jenkins 版本:

docker images
docker inspect jenkins的容器ID

linux服务器上Docker中安装jenkins

2 Docker安装Jenkins

删除旧版本

docker ps -a
docker rm -f 容器id

linux服务器上Docker中安装jenkins

删除镜像:

docker images
docker rmi 2cb4cce6db0a

linux服务器上Docker中安装jenkins

Docker下载Jenkins

docker pull jenkins/jenkins:lts //最新版

linux服务器上Docker中安装jenkins

查看Jenkins镜像

docker images
docker inspect jenkins镜像ID

linux服务器上Docker中安装jenkins

创建一个jenkins目录

mkdir /data/jenkins_home;

linux服务器上Docker中安装jenkins

安装启动Jenkins容器

docker run -d --name jenkins -p 8081:8080 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts;

备注:
-d //启动在后台
–name //容器名字
-p //端口映射(8081:宿主主机端口,8080:容器内部端口)
-v //数据卷挂载映射(/data/jenkins_home:宿主主机目录,另外一个即是容器目录)
enkins/jenkins:lts //Jenkins镜像(最新版)

linux服务器上Docker中安装jenkins

查看Jenkins启动情况

docker ps | grep jenkins;

我这里没有启动成功,看下面截图,如果你和我一样,请看下面的解决办法
linux服务器上Docker中安装jenkins

安装过程遇到的小问题

Jenkins容器docker run之后状态总是Exited

docker ps -a

linux服务器上Docker中安装jenkins

查看docker日志 :

docker logs jenkins

发现是目前权限问题
因为/data/jenkins_home 目录是root权限

解决:

chown -R 1000:1000 /data/jenkins_home //用户组改变

linux服务器上Docker中安装jenkins

linux服务器上Docker中安装jenkins

重启容器

docker start 316b4 //容器id

17gc10Z /]# docker ps
CONTAINER ID   IMAGE                 COMMAND                  CREATED          STATUS          PORTS                                                  NAMES
68b7dc6f81b0   mysql:5.7             "docker-entrypoint.s…"   50 minutes ago   Up 50 minutes   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
316b477c9618   jenkins/jenkins:lts   "/usr/bin/tini -- /u…"   25 hours ago     Up 24 hours     50000/tcp, 0.0.0.0:8081->8080/tcp, :::8081->8080/tcp   jenkins

宿主主机端口要开启

因为本操作是在阿里云ECS上进行安装的,需要在安全组里开放8081此端口。
linux服务器上Docker中安装jenkins

访问Jenkins

http://120.16.50.165:8081 //ip:端口号

linux服务器上Docker中安装jenkins

管理配置Jenkins

解锁

在安装完成后,默认生成了一个登录密码,首次登录需要这个密码。
密码路径:var/jenkins_home/secrets/initialAdminPassword //容器内部
查找密码:
docker exec -it jenkins_01 bash //进入jenkins容器
cat /var/jenkins_home/secrets/initialAdminPassword //查看密码

安装插件

新手安装建议选择:Install suggested plugins,安装过程大概半个多小时。

linux服务器上Docker中安装jenkins

管理用户创建

这个用户就是最大管理者权限,相当于admin

Jenkins配置完成

到此步,安装就大功告成!

http://120.20.50.165:8081 //ip:端口号

在这里插入图片描述