1、查询jenkins:docker search jenkins

2、拉取jenkins镜像

  docker pull jenkins/jenkins:lts

3、新建jenkins的工作目录:

  mkdir /homemk/jenkins

4、查看目录归属的ID命令:ls -nd /home/jenkins

  给ID用户添加操作权限:chmod  777 /home/jenkins

5、运行容器:docker run  -d -p 8080:8080  --name myjenkins    -v /home/jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins

  • -d 后台运行镜像
  • -p 8080:8080 将镜像的8080端口映射到服务器的8080端口
  • -p 50000:50000 将镜像的50000端口映射到服务器的50000端口
  • -v /home/jenkins:/var/jenkins_home 。v参数中,冒号":"前面的目录是宿主机目录,后面的目录是容器内目录。
  • -v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置。
  • --name jenkins 给容器起一个别名

6、浏览器输入http://IP:8080访问jenkins首页

7、查看启动日志

获取到上面的容器id,使用docker logs命令查看最后30行日志

$ docker logs 7 --tail 30 容器ID或者名称

*************************************************************
*************************************************************
************************************************************* Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation: 215046cc8de7437dac6ad1d250eddcb0 This may also be found at: /var/jenkins_home/secrets/initialAdminPassword *************************************************************
*************************************************************
************************************************************* Jun 26, 2018 3:49:41 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jun 26, 2018 3:49:42 AM hudson.model.DownloadService$Downloadable load
INFO: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
Jun 26, 2018 3:49:42 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Download metadata. 7,058 ms
Jun 26, 2018 3:49:43 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jun 26, 2018 3:49:43 AM jenkins.InitReactorRunner$1 onAttained
INFO: Completed initialization
Jun 26, 2018 3:49:43 AM hudson.WebAppMain$3 run
INFO: Jenkins is fully up and running
--> setting agent port for jnlp
--> setting agent port for jnlp... done

从上面的日志可以知道,jenkins容器已经首次启动成功,并且将登录密码打印出来了。复制这个密码215046cc8de7437dac6ad1d250eddcb0

如果无法登录访问jenkins;需要在Linux系统上把jenkins端口暴露出来步骤如下:

最近在阿里云服务器centos上安装了jenkins,默认是不开启远端访问功能,需要设置一下防火墙,在开放默认端口号 8080时提示FirewallD is not running,经过排查发现是防火墙就没打开造成的,出于安装考虑还是把防火墙开上吧,以下步骤仅供参考啦。

工具/原料

 
  • 阿里云服务器centos

方法/步骤

 
  1.  

    执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示FirewallD is not running,如下图所示。

  2.  

    通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。

  3.  

    通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。

  4.  

    再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。

  5. 5

    如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能。

  6. 6

    再次执行执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示设置成功,这样就可以继续后面的设置了。

    END
  7. 重启systemctl restart docker

在控制台上,找到安全->防火墙:

如果自己需要暴露某些端口,点击添加规则,暴露需要的端口(主机里面也需要配置好相应的防火墙!!)。

登录访问jenkins

上面指定了本地的端口为9000,于是访问地址为:http://localhost:9000

将上一步复制的密码粘贴进去,即可登录jenkins。

选择安装推荐的插件,点击,下一步

插件正在自动安装,等待完成,下一步

可以填写表单创建一个用户,这里不创建直接右下角,使用admin账户继续。

配置访问路径,这里默认就好,下一步

安装完成,下一步

Jenkins主页面

安装插件

如果上面的步骤中,插件安装失败了,提示无法连接,那就需要梯子或者更换镜像仓库。
这里我们采用比较简单的方式,更换仓库地址来解决插件无法下载安装的问题。

1.jenkins->系统管理->管理插件->高级

把:http://updates.jenkins-ci.org/update-center.json
换成:http://mirror.esuni.jp/jenkins/updates/update-center.json

2.jenkins->系统管理->管理插件->可选插件

通过右上角的搜索框搜索插件,如git、maven,勾选,点击底部按钮直接安装即可。

创建项目

jenkins全局工具配置

进入到jenkins容器中命令:docker exec -it 容器ID或者名称 /bin/bash

在容器内输入:echo $JAVA_HOME 获取容器内java的安装路径

阿里云服务器上在docker部署jenkins的更多相关文章

  1. 阿里云服务器上通过Docker部署redmine

    背景:在日常工作的过程中会遇到各种各样的问题,每个问题来了之后需要花时间解决.这里就面临两个问题. 1:问题责任不明确,有时候会遇到数据库或者物理服务器的问题,这时候就需要把相应问题指派给相应的人,传 ...

  2. 云服务器上利用Docker部署Django项目

    转载别人的,请看下面链接 云服务器上利用Docker部署Django项目

  3. 如何在云服务器上使用Docker部署easy-mock

    部署Easy-mock 安装Docker Ubuntu下安装Docker 安装Docker-compose Ubuntu下安装docker-compose 使用Docker部署 Easy-Mock D ...

  4. unigui在阿里云服务器上部署

    unigui在阿里云服务器上部署 客户租用了阿里云WINDOWS2008服务器,部署UNIGUI发现死活不行,WINDOWS2008自带的IE9浏览器打开URL,卡死在loading...... 我远 ...

  5. Linux学习2-在阿里云服务器上部署禅道环境

    前言 以前出去面试总会被问到:测试环境怎么搭建?刚工作1-2年不会搭建测试环境还可以原谅自己,工作3-5年后如果还是对测试环境搭建一无所知,面试官会一脸的鄙视. 本篇以最简单的禅道环境搭建为例,学习下 ...

  6. 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器

    一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...

  7. 阿里云服务器上搭建seafile专业版

    因为官方一键安装教程在阿里云服务器上无法安装,由于水平有限,无法解决,所以选择手动安装 参考资料: 1,.腾讯云搭建seafile服务器 2.How to Install Seafile with N ...

  8. 阿里云服务器上安装mysql的心路历程(博友们进来看看哦)

    在阿里云花了100买了一台云服务器,配置如下: CPU: 1核 内存: 512MB 数据盘: 0G 带宽: 1Mbps 阿里云服务器安装mysql搞得我想吐血,搞了一个多星期,现在才搞好,而且,还有许 ...

  9. 在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问--解决办法

    在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问的原因是阿里云平台为了安全设置了安全组策略,必须我们授权的端口,其他计算机才能通过http访问 解决办法:(这里以阿里轻量应用服务器为 ...

随机推荐

  1. HashSet的add()方法源码解析(jdk1.8)

    HashSet 实现了Set接口 实际上是HashMap 可以存null,但只能有一个 不保证元素是有序的,取决于hash后,在确定索引结果 add源码 //核心操作putVal final V pu ...

  2. 快速构建CLI程序并发布到PyPi

    构造一个简单的CLI程序 typer 这个从去年就被各种营销号吹成Web框架的 第三方库, 与 FastAPI 同出一人之手,它不是Web框架,它是一个用来构建CLI程序的库,我们就简单搞个例子 # ...

  3. Easy-ARM IMX283 移植RTL8192CU驱动

    测试平台 宿主机平台:Ubuntu 12.04.4 LTS 目标机:Easy-ARM IMX283 目标机内核:Linux 2.6.35.3 无线网卡驱动下载地址:http://www.comfast ...

  4. Python - 面向对象编程 - __str__()

    为什么要讲 __str__ 在 Python 中,直接 print 一个实例对象,默认是输出这个对象由哪个类创建的对象,以及在内存中的地址(十六进制表示) 假设在开发调试过程中,希望使用 print ...

  5. 算法:实现strStr(),字符串indexOf方法

    描述 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存在,则返回  -1. 个人思路: ...

  6. python3.x内置函数

    函数 返回值类型 函数详情 abs(x) int|float 求绝对值,若是复数则返回复数的模 all(iterable) bool 若所有元素为真则返回True(非0,非空,非None) any(i ...

  7. 【第十篇】- Git 远程仓库(Github)之Spring Cloud直播商城 b2b2c电子商务技术总结

    Git 远程仓库(Github) Git 并不像 SVN 那样有个中心服务器. 目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作. 你就需要将数据 ...

  8. k8s nodes节点 notready问题

    1.在master查看node状态 [root@master1 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION master1 Ready co ...

  9. java版gRPC实战之六:客户端动态获取服务端地址

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  10. 【多线程】Android多线程学习笔记——线程池

    Java线程池采用了享元设计模式,在系统中维持一定数量的线程,用于处理异步或并发需求,在平时处理异步或并发任务时被广泛使用.这里基于JDK1.8和Android28来整理一些关于线程池的知识点. 一. ...