title: Install Jenkins with Docker tags: [“docker”, “Jenkins”,“cicd”] date: 2022-04-16 draft: false

Install Jenkins with Docker

jdk安装

Downloadjdk解压到个人InstallationDirectory

/mydata/jdk/jdk-11.0.10

maven安装

Downloadmaven解压到个人InstallationDirectory

/mydata/maven/apache-maven-3.8.5

修改mavneConfiguration Filesetting.xml,Settings本地仓LibraryDirectory

<localRepository>/mydata/maven/repo</localRepository>

添加阿里云Image,在mirrors节点下增加以下内容

<mirrors>

    <mirror>
        <id>alimaven</id>
        <mirrorOf>central</mirrorOf>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>
   
</mirrors>

开启Docker Remote API

关闭防火墙 或者 开启防火墙的端口

#关闭防火墙  
systemctl stop firewalld.service 
# 禁止firewall开机启动
systemctl disable firewalld.service 

# 或者允许固定端口
firewall-cmd --zone=public --add-port=2375/tcp --permanent 
firewall-cmd --reload

Docker环境下安装Jenkins

  1. 拉取最新的Jenkins的docker镜像

    docker pull jenkins/jenkins:lts
  2. 启动Jenkins容器

    docker run -p 10240:8080 -p 10241:50000 --name jenkins \
    -u root \
    -v /mydata/jenkins_home:/var/jenkins_home \
    -v /mydata/maven/apache-maven-3.8.5:/maven/apache-maven-3.8.5 \
    -v /mydata/jdk/jdk-11.0.10/:/jdk/jdk-11.0.10 \
    -v /mydata/maven/repo:/mydata/maven/repo \
    -d jenkins/jenkins:lts

    注意:自己的Directory和端口是否相同,不同请求修改。

    说明:

    • 挂载Directory/mydata/jenkins_home为 jenkins InstallationConfiguration File地址
    • 挂载Directory/mydata/maven/apache-maven-3.8.5:/maven/apache-maven-3.8.5,需提前Download好本地maven解压到宿主机/mydata/maven/apache-maven-3.8.5:/maven/apache-maven-3.8.5Directory
    • 挂载Directory/mydata/jdk/jdk-11.0.10/为 宿主机本地jdkDirectory/mydata/jdk/jdk-11.0.10/,需提前Download解压到该Directory
    • 挂载Directory/mydata/maven/repo为后面需要用到的 maven 仓Library地址
    • -p 10240:8080 -p 10241:50000,端口映射,根据自己端口需求更改
    • —name jenkins,Container名称

    遇到Problem:

    iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 10241 -j DNAT --to-destination 172.17.0.5:50000 ! -i docker0: iptables: No chain/target/match by that name.

    Solution:Restart Docker

    systemctl restart docker

    View jenkins初始密码(第一次访问jenkins需要用到这个管理员密码)

    docker logs jenkins

配置jenkins

首次访问jenkins配置

  1. 访问jenkins,自己ip加自己映射的端口,我这配置的是12.7.0.0.1:10240
  2. 等待启动完成,会提示输入管理员密码。也就是上面看到的密码。输入日志里面获取的管理员密码。
  3. 首次进入jenkins需要下载推荐插件,点击左边第一项【安装推荐的插件】。等待过程有点长,请耐心等待… 等待插件Download完成后,进入下一步。
  4. 创建一个管理员账号 admin / admin
  5. 输入实例配置url:htttp://127.0.0.1:10240

注意:如果插件Installation失败,提示“无法连接到Jenkins”,关闭jenkins修改Installation源。进入jenkins的工作Directory,修改hudson.model.UpdateCenter.xml更改为:国内的清华大学的Image地址。

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

然后再Restartjenkins稍等一会即可Installation。