Docker----基于docker部署jenkins

使用docker部署jenkins

1.安装

创建镜像时需要注意几个地方:

1.关联本地 volumes
2.设置时区(默认是 UTC 时间)
3.映射 50000 端口(这个是 master 和 slave 的通讯端口)和 8083 端口(Web)
4.JAVA_OPTS=-Duser.timezone=Asia/Shanghai参数是设置时区为上海
5.镜像选择:

  • lts 长期稳定版本,但还是会有新版提醒
  • latest 每周更新版本

本次选择的镜像为lts版本

docker run -d --name myjenkins  -p 8083:8080 -p 50000:50000  --restart=always -v /qj/jenkins:/var/jenkins_home  -u root -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai  jenkins/jenkins:lts

对于进行设置 JAVA 的参数可以参考:参考链接

2.需要注意的问题

1.挂载/qj/jenkins/文件夹时需要将文件夹的归属用户id更改为1000,否则会抛出无操作权限异常。
命令如下所示:

sudo chown -R  1000:1000 jenkins

2.说道此处,有人就要问到了,为什么文件夹的归属用户Id必须是1000?

对于初次接触jenkins来说,确实挺郁闷的。为什么UID必须是1000?带着疑问我去查看了Docker中央仓库提供的Dockerfile,在这里面看到了如下的代码:
在这里插入图片描述
3.查看文件夹的归属者
命令如下:

ls -nd ‘文件夹名称’

3.启动jenkins

查看运行状态
命令: sudo dockers ps
在这里插入图片描述
初次使用jenkins

1.获取管理员密码:

在浏览器输入“IP地址:8083”进入Jenkins,首次进入需要获取管理员的密码,如图:
在这里插入图片描述
进入容器内部获取密码

docker exec myjenkins cat /var/jenkins_home/secrets/initialAdminPassword
2.安装插件

点击安装推荐插件即可
在这里插入图片描述

3.创建用户

在这里插入图片描述

4.安装成功

在这里插入图片描述

4.新建用户和权限问题

1.新建用户

对于Jenkins,我们在使用的时候,给不同的用户分配不同的权限,便于管理。也可以让Jenkins变得更加安全,首先,我们需要将Jenkins的设置中设置为允许用户注册。
在这里插入图片描述
保存后,回到主界面。

2.添加权限

点击管理 > 配置全局安全性 > 授权策略 > 安全矩阵,在安全矩阵下面点击添加用户或组,加入用户名,接下来给新加的用户添加权限,之后点击保存。
注:如果不添加权限,用户是无法进入jenkins的,会显示403错误。
在这里插入图片描述

3.admin用户登陆,提示登陆无效的解决方法

问题出现现象:

系统一直正常,退出登录之后再登陆,提示用户无效,无法登陆成功。

问题分析过程:

1、查看日志:/var/log/jenkins/jenkins.log(通过ps -elf | grep jenkins查看logfile路径),日志显示正常,没什么发现

2、猜测 登陆无效,是否是权限问题导致?然后继续尝试,对了!权限配置问题。

问题解决方法(比较暴力):

1、打开config文件(通过ps -elf | grep jenkins查看JENKINS_HOME目录,然后在目录下查找config.xml文件)

2、修改true为false

3、删除*****和****两项内容

4、重启jenkins,重新登陆即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了使用Docker部署Jenkins,可以使用docker-compose文件来配置Jenkins容器。在docker-compose文件中,可以指定Jenkins的镜像、卷以及其他相关的配置信息。在配置文件中,可以指定Jenkins的镜像版本、数据卷的映射路径以及与Docker守护进程通信的socket路径。 一个示例的docker-compose文件如下所示: version: '3.1' services: jenkins: image: jenkins/jenkins:lts volumes: - /data/jenkins/:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock ... 这个配置文件指定了使用Jenkins的最新稳定版镜像,同时将Jenkins的数据目录映射到主机的/data/jenkins/路径下。此外,还将Docker守护进程的socket映射到Jenkins容器中以便与Docker进行通信。其他的配置信息可以根据具体需求进行调整和添加。 值得注意的是,还有其他的方法可以使用Ansible和Docker部署Jenkins容器。可以使用Ansible的Docker模块来创建和管理Docker容器,同时使用Jenkins的Ansible插件来自动化Jenkins的安装和配置。这样可以更加灵活地管理Jenkins容器,并且可以将Jenkins容器部署到多个主机上。 希望以上信息对您有所帮助。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [docker-compose部署配置jenkins的详细教程](https://download.csdn.net/download/weixin_38748556/14048510)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Ansible-Docker-Jenkins:使用Docker-Jenkins https部署Jenkins Docker容器的角色](https://download.csdn.net/download/weixin_42098759/16013274)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值