前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【云原生】Dokcer安装Jenkins

【云原生】Dokcer安装Jenkins

作者头像
互联网-小阿宇
发布2022-11-21 10:43:28
4010
发布2022-11-21 10:43:28
举报
文章被收录于专栏:互联网-小阿宇

🎈 作者:互联网-小啊宇 🎈 简介: CSDN 运维领域创作者。目前从事 Kubernetes运维相关工作,擅长Linux系统运维、开源监控软件维护、Kubernetes容器技术、CI/CD持续集成、自动化运维、开源软件部署维护等领域。 🎈 博客首页:互联网-小啊宇

⭐服务器安装Docker

🍒关闭防火墙、沙盒、iptables

代码语言:javascript
复制
systemctl stop firewalld && systemctl disable firewalld && setenforce 0 && iptables -F && iptables-save

🍒卸载旧版本docker或者残留

代码语言:javascript
复制
yum -y remove docker docker-common docker-selinux docker-engine docker-engine-selinux container-selinux docker-ce

# 或者
yum -y remove docker*

#删除所有的镜像、容器、数据卷、配置文件等
sudo rm -rf /var/lib/docker

# 查看安装的docker相关软件 卸载情况
yum list installed | grep docker

🍒1. 安装yum管理工具:

代码语言:javascript
复制
yum install -y yum-utils

🍒2. 添加国内镜像源

代码语言:javascript
复制
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

🍒3. 查看软件版本:

代码语言:javascript
复制
yum list docker-ce --showduplicates|sort -r
代码语言:javascript
复制
docker-ce.x86_64            3:18.09.6-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.5-3.el7                     docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
  1. 安装指定的docker版本
代码语言:javascript
复制
yum install docker-ce-17.06.2.ce-1.el7.centos

⭐获取 Jenkins 镜像

🍒1、搜索 Jenkins 镜像

代码语言:javascript
复制
[root@localhost ~]# docker search jenkins
NAME                           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
jenkins                        DEPRECATED; use "jenkins/jenkins:lts" instead   5504      [OK]       
jenkins/jenkins                The leading open source automation server       3087                 
jenkins/jnlp-slave             a Jenkins agent which can connect to Jenki...   150                  [OK]
jenkins/inbound-agent                                                          65                   
bitnami/jenkins                Bitnami Docker Image for Jenkins                53                   [OK]
jenkins/slave                  base image for a Jenkins Agent, which incl...   48                   [OK]
jenkins/agent                                                                  39                   
jenkins/ssh-slave              A Jenkins slave using SSH to establish con...   38                   [OK]
jenkins/ssh-agent              Docker image for Jenkins agents connected ...   24                   
jenkins/jnlp-agent-docker                                                      8                    
jenkins/jnlp-agent-maven       A JNLP-based agent with Maven 3 built in        7                    
jenkins/pct                    Plugin Compat Tester                            5                    [OK]
jenkins/evergreen              An automatically self-updating Jenkins dis...   5                    
jenkins/jenkins-experimental   Experimental images of Jenkins. These imag...   3                    [OK]
jenkins/jnlp-agent-python      A JNLP-based agent with Python built in         3                    
jenkins/jnlp-agent-alpine                                                      2                    
jenkins/ath                    Jenkins Acceptance Test Harness                 1                    [OK]
jenkins/jenkinsfile-runner     Jenkinsfile Runner packages                     1                    
rancher/jenkins-jenkins                                                        1                    
jenkins/core-pr-tester         Docker image for testing pull-requests sen...   1                    
jenkins/jnlp-agent-node                                                        1                    
jenkins/jnlp-agent-ruby                                                        1                    
rancher/jenkins-master         Jenkins Server                                  1                    [OK]
rancher/jenkins-slave          Jenkins Build Slave                             0                    [OK]
rancher/jenkins-jnlp-slave                                                     0        

选择第二个版本的镜像,因为这个是 Jenkins 官网里面推荐的 Docker 镜像,同时第一个也提示已经废弃了。

🍒2、拉取 Jenkins 镜像

代码语言:javascript
复制
docker pull jenkins/jenkins

该命令直接拉取的最新版本(latest)的镜像,我们还可以选择下面几个推荐的版本:

  • jenkins/jenkins:lts-jdk11:基于 JDK11 的最新 LTS 版本;
  • jenkins/jenkins:alpine:Alpine 版本;
  • jenkins/jenkins:latest-jdk8:基于 JDK8 的最新版本;

更多 TAG 版本的 Jenkins 可以查看 Docker Hub 官网:https://registry.hub.docker.com/r/jenkins/jenkins/tags

🍒查看Jenkins镜像信息

代码语言:javascript
复制
docker inspect jenkins/jenkins

⭐运行 Jenkins 容器

🍒1、创建 Jenkins 挂载目录

代码语言:javascript
复制
mkdir -p /data/jenkins_home
chmod 777 /data/jenkins_home

注意: 创建挂载目录的同时要给该目录配置权限 777,如果权限不足的话,到时进行目录挂载的时候会失败导致无法启动 Jenkins 容器。

🍒2、创建并启动 Jenkins 容器

代码语言:javascript
复制
docker run -d \
    -p 8888:8080 \
    -p 50000:50000 \
    -v /data/jenkins_home:/var/jenkins_home \
    -v /etc/localtime:/etc/localtime \
    --restart=always \
    --name=jenkins \
    jenkins/jenkins
  • -d:后台运行容器;
  • -p 8888:8080:将容器的 8080 端口映射到服务器的 8888 端口;
  • -p 50000:50000:将容器的 50000 端口映射到服务器的 50000 端口;
  • -v /data/jenkins_home:/var/jenkins_home:将容器中 Jenkins 的工作目录挂载到服务器的/data/jenkins_home;
  • -v /etc/localtime:/etc/localtime:让容器使用和服务器同样的时间设置;
  • --restart=always:设置容器的重启策略为 Docker 重启时自动重启;
  • --name=jenkins:给容器起别名;

🍒3、查看是否启动成功

查看是否在运行:

代码语言:javascript
复制
[root@localhost ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                              NAMES
a5f0ae5db965        jenkins/jenkins     "/usr/bin/tini -- ..."   4 minutes ago       Up 4 minutes        0.0.0.0:50000->50000/tcp, 0.0.0.0:8888->8080/tcp   jenkins

查看启动日志:

代码语言:javascript
复制
[root@localhost ~]# docker logs jenkins
Running from: /usr/share/jenkins/jenkins.war
webroot: EnvVars.masterEnvVars.get("JENKINS_HOME")
2022-07-07 03:06:58.305+0000 [id=1]	INFO	org.eclipse.jetty.util.log.Log#initialized: Logging initialized @630ms to org.eclipse.jetty.util.log.JavaUtilLog
2022-07-07 03:06:58.404+0000 [id=1]	INFO	winstone.Logger#logInternal: Beginning extraction from war file

...

如果没有启动成功的话,可以排查一下挂载的目录是否正确,比如是否配了目录权限等。

⭐访问和初始化 Jenkins

在访问 Jenkins 页面前,我们需要对 Jenkins 的插件配置内容修改成内容的镜像加速地址 因为目录进行了挂载,可以直接在宿主机进行修改配置

代码语言:javascript
复制
cd /data/jenkins_home/updates
sed -i 's#https://updates.jenkins.io/download#https://mirrors.tuna.tsinghua.edu.cn/jenkins#g' default.json
sed -i 's#http://www.google.com#https://www.baidu.com#g' default.json

修改配置后重启jenkins

代码语言:javascript
复制
docker restart jenkins

配置好后,访问 Jenkins 页面,地址为:IP + 容器的8080端口所映射到服务器上的端口

宿主机或者容器根据提示查看密码

  • 宿主机路径:/data/jenkins_home/secrets/initialAdminPassword
  • 容器路径:/var/jenkins_home/secrets/initialAdminPassword
代码语言:javascript
复制
[root@localhost ~]# cat /data/jenkins_home/secrets/initialAdminPassword
625123f5d4XXXXXXXXXe51fb897

选择安装推荐的插件即可,下面是推荐的插件安装页面:

安装完成后,会进入管理员创建页面,可以选择使用admin账户继续,也可以创建一个新的管理员用户

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ⭐服务器安装Docker
    • 🍒关闭防火墙、沙盒、iptables
      • 🍒卸载旧版本docker或者残留
        • 🍒1. 安装yum管理工具:
          • 🍒2. 添加国内镜像源
            • 🍒3. 查看软件版本:
            • ⭐获取 Jenkins 镜像
              • 🍒1、搜索 Jenkins 镜像
                • 🍒2、拉取 Jenkins 镜像
                  • 🍒查看Jenkins镜像信息
                  • ⭐运行 Jenkins 容器
                    • 🍒1、创建 Jenkins 挂载目录
                      • 🍒2、创建并启动 Jenkins 容器
                        • 🍒3、查看是否启动成功
                        • ⭐访问和初始化 Jenkins
                        相关产品与服务
                        容器服务
                        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档