Jenkins的docker安装和配置

文章详细记录了如何使用Docker安装Jenkins,包括选择镜像、设置端口映射和数据卷,以及遇到的内存问题和解决方法,如调整Jenkins的Java内存选项以适应不同内存环境。

前言:

       折腾了一下午的Jenkins,还是做个记录吧

1、安装

     参考Jenkins官方的Docker仓库 https://hub.docker.com/r/jenkins/jenkins

    选择一个Tag,或者不选,直接  docker pull jenkins/jenkins

2、首次启动

      同样参考官方文档  docker/README.md at master · jenkinsci/docker · GitHub

     在Usage中给出了很多条启动指令 

 最简单的: 

docker run -p 8080:8080 -p 50000:50000 --restart=on-failure jenkins/jenkins:lts-jdk11

8080是访问端口,50000据说是代理端口,没用过,暂且无视



docker run -d -v /data/jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 --restart=on-failure jenkins/jenkins:lts-jdk11

/data/jenkins_home是宿主机的jenkins保存目录,随意改为本地目录
/var/jenkins_home 是容器内的jenkins保存目录,不能改



由于Jenkins启动时会占用很多内存,如果内存配置的小了,会无限重启,比如我给虚拟机配置了2G内存,结果Jenkins一直无限重启,完全没法用,如果直接给虚拟机配置大一些的内存,又好像有点浪费,所以设置启动内存还是很重要的



docker run --restart=always -d -p 8080:8080 -e JENKINS_JAVA_OPTIONS="-D java.awt.headless=true" -v /data/jenkins_home3/:/var/jenkins_home/ --env JAVA_OPTS="-Xms1536m -Xmx1536m -Xmn768m -XX:PermSize=128m -XX:MaxPermSize=256m" --env JENKINS_OPTS="--prefix=/jenkins" --user root --name=jenkins3 jenkins/jenkins:jdk11

主要是设置了Jenkins的内存占用以及年轻代的内存大小

接下来就可以访问了: http://ip:8080

--prefix=/jenkins 是为了配合nginx使用,访问地址为:http://ip/jenkins

### 如何在 Docker安装 Jenkins #### 准备工作 为了顺利地在 Docker 中部署 Jenkins,确保已经正确安装配置Docker 环境。 #### 下载 Jenkins 镜像 通过官方仓库获取最新版的 Jenkins 镜像。可以使用如下命令来完成下载操作: ```bash docker pull jenkins/jenkins:lts-jdk11 ``` 这一步骤会拉取包含 JDK 11 的长期支持版本 LTS (Long Term Support) 的 Jenkins 镜像[^1]。 #### 创建必要的文件夹结构用于数据持久化存储 创建本地路径作为卷映射的目标位置以便保存 Jenkins 运行所需的数据以及日志等重要资料。例如,在 `/usr/local/docker` 目录下建立 `jenkins` 文件夹用来存放 Jenkins 主机上的配置信息其他资源[^2]。 #### 启动 Jenkins 容器实例 利用之前准备好的镜像启动一个新的容器,并设置端口转发规则使得可以从外部网络访问 Web UI;同时定义多个卷绑定关系以实现数据共享与保留功能。具体指令如下所示: ```bash docker run \ -d \ --name jenkins \ -p 8080:8080 \ -p 50000:50000 \ -v /usr/local/docker/jenkins:/var/jenkins_home \ -v /usr/java/latest/:/usr/java/latest/ \ -v /opt/apache-maven:/opt/apache-maven \ jenkins/jenkins:lts-jdk11 ``` 上述命令指定了三个不同的挂载点分别对应于 Java 开发环境、Maven 构建工具 Jenkins 自身的工作空间。其中 `-u root` 参数可根据实际情况调整是否需要管理员权限运行容器内的服务进程[^3]。 #### 初始化设置向导 首次进入 Jenkins 页面时会被引导至初始化界面,按照提示输入初始解锁密钥(通常位于宿主机上 `/usr/local/docker/jenkins/secrets/initialAdminPassword`),接着可以选择安装推荐插件或是自定义加载特定组件集合。完成后即成功完成了整个安装流程[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值