在 ubuntu 中愉快的安装 Jenkins
这篇文章详细的记录了在 ubuntu 中安装 Jenkins 的一步又一步,因为找了很多 Linux 下安装 Jenkins 的教程,不是很满意
所以决定自己写一篇以备后用(终于让我找到了Java 不用去官网下载的方法了~haha)
为了写文章,狠心把我的 Windows 服务器重装了,允悲。
安装前的准备
一台 ubuntu 主机(本篇文章使用的是 Ubuntu Server 16.04.1 LTS)
安装教程远程连接 ubuntu 的软件
WinSCP,PuTTY 下载使用
如果你恰好是腾讯云的 Ubuntu,默认用户名为:ubuntu
ubuntu 开启 root 的相关设置
若要使用 root 登录,第一次激活需要设置 root 用户的密码:
sudo passwd,
两次密码设置后即可通过su root切换用户
现在可以使用 root 但是无法远程连接,还需要设置/etc/ssh/sshd_config中PermitRootLogin的值为yes
设置后记得重启 ssh 服务:sudo service ssh restart
刚接触 linux 时很希望有人能告诉我的一些基本姿势
命令很多很多,且用且搜。
切换用户:
su root权限问题:非 root 账户在执行命令时加上 sudo 等于超级管理员执行
常用命令:
ls -a:显示所有文件及目录
pwd:查看当前路径
lsb_release -a:查看系统版本
ifconfig:查看 IP 等信息
ps:显示正在运行中的进程的信息
学习更多vim 常用的几个命令:
i:输入模式(使用 vim 打开文件后先按一些 i,然后再移动光标输入字符~),
w:保存,
q:退出,
wq:保存并退出,
q!:退出保存
学习更多下载软件:搜
wget xxx,curl xxx
一切准备就绪,LINK START
安装 Jenkins
第一次安装的可以稍微看下jenkins 的安装文档
总之,如果没有安装 Java 需要安装一下。
下面是目前找到的在 ubuntu 下安装 Java 最简单的方法
Java 安装
参考:https://blog.csdn.net/geekun/article/details/51325525
sudo add-apt-repository ppa:openjdk-r/ppa
# 需要回车一下
sudo apt-get update
echo y|sudo apt-get install openjdk-8-jdk
Jenkins的安装
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
echo y|sudo apt-get install jenkins
Jenkins的运行
Jenkins 是以服务的形式运行的,故可使用如下民两个管理服务,默认使用 8080 端口
启动服务:sudo service jenkins start
相关服务命令:sudo service jenkins start|stop|restart
防火墙问题
如果因为防火墙的问题可以使用:sudo ufw allow 8080 开放指定端口
ps:在腾讯云的主机中默认防火墙是关闭的(sudo ufw status查看)
Jenkins的配置
至此,可以通过 http://ip:8080 访问 Jenkins 了,然后就是初始化和使用了
- 使用
cat /var/lib/jenkins/secrets/initialAdminPassword查看初始密码并在浏览器中登录 - 安装推荐或自选插件(第一次使用推荐就好,后面可以根据自己需要做调整)
- 创建第一个管理员用户 略~
- 设置 Jenkins 网址..
正式开启 Jenkins 之旅
踩过的坑
shell 脚本无法访问环境变量
解决方案为:首行添加#!/bin/bash -ilex,此为我安装 nvm 后在终端可以访问, Jenkins 构建 shell 脚本时无法访问的解决方案通过-i 参数和-l 参数让 bash 为 login shell and interactive shell,就可以读取/etc/profile 和~/.bash_profile 等文件
对于 e 参数表示一旦出错,就退出当前的 shell,x 参数表示可以显示所执行的每一条命令
总结
在使用过程中,还有很多需要记录的,后续再逐步总结。
有个想法就是最终可以构建一个自己的Jenkins镜像,往里面添加几个自己的技术栈的发布模板,应该挺爽的,多尝试,多总结。
最近十分不容易的用Jenkins+Docker把项目部署到服务器了,在找资料的过程中,发现很难一下就找到自己想要的,果然,还是得自己动手总结了。
以后也会用到,趁现在总结一二,以后就不要到处找文章了,哈哈。
参考文章
- Jenkins 安装文档:https://jenkins.io/doc/book/installing/#debian-ubuntu
- Ubuntu 允许 root 远程登录配置:https://www.cnblogs.com/TechSnail/p/7695090.html
- Linux 下快速安装和配置 jdk8:https://blog.csdn.net/geekun/article/details/51325525
- Jenkins 执行 shell 命令提示“Command not found”的解决方案:https://blog.csdn.net/huodoubi/article/details/56845306
在 ubuntu 中愉快的安装 Jenkins的更多相关文章
- Ubuntu 中软件的安装、卸载以及查看的方法总结
Ubuntu 中软件的安装.卸载以及查看的方法总结 博客分类: Linux UbuntuDebian配置管理CacheF# 说明:由于图形化界面方法(如Add/Remove... 和Synaptic ...
- ubuntu中查看已安装软件包的方法
ubuntu中查看已安装软件包的方法: 方法一:在新立得软件包管理器中,打到已安装,便可以看看有多少包被安装. 如果想把这些包的信息复制到一文件里,可用下面的方法. 方法二:在终端输入 sudo dp ...
- Ubuntu 中查找软件安装的位置
Ubuntu 中查找软件安装的位置 执行该程序 直接执行该程序,有时候一些程序执行时会显示出自己的位置,比如: 用命令 ps -e 找到该程序的名字 用 find 或 whereis 命令查找文件位置 ...
- ubuntu中jdk已经安装,但是eclipse启动报错
问题描述 在ubuntu中,jdk已经正常安装,java_home变量已经配置,但是启动eclipse的时候还是弹出以下错误信息: A Java RunTime Environment (JRE) o ...
- ubuntu中VNC的安装配置笔记
使用服务器时,利用远程桌面是非常方便的,否则需要跑到服务器机房操作非常的费事,或者需要远程操作机器是也可以使用,一般的操作系统都会带有远程桌面功能,但是不如第三方的的软件好用,对于linux系统常用的 ...
- 关于ubuntu中的软件安装
在ubuntu中一般使用apt-get来安装软件工具, 例如 sudo apt-get install g++ apt-get会在镜像库中找到你需要的软件镜像(例如 g++)来安装,那么apt-get ...
- ubuntu中python3.4安装pip
这两天碰到在ubuntu中安装pip的问题. 第一种方法 用百度搜索了一下,基本上都是这个命令: sudo apt-get install python3-pip 但是,用这条命令下载速度特别慢. 第 ...
- Ubuntu中Google Chrome安装
转载自博客 1. 方法一 1.在ubuntu中启动终端 2.在终端中,输入以下命令: sudo wget http://www.linuxidc.com/files/repo/google-c ...
- Ubuntu 中sendmail 的安装、配置与发送邮件的具体实现
一.安装 ubuntu中sendmail函数可以很方便的发送邮件,ubuntu sendmail先要安装两个包. 必需安装的两个包: 代码 sudo apt-get install sendmail ...
随机推荐
- 处理H5新标签方法
语义化 HTML5中加入了更加具有语义化的标签,比如header,nav,footer等,可以为搜索引擎优化,让爬虫能更好地理解网页结构. 但是对于新标签的兼容性不是很好,IE9以下旧版本不支持新的语 ...
- PDF怎么添加文字水印与图片水印
现在是个知识分享时代,但不可避免的盗版也无处不在,不知道在我们大家身边有没有遇到过这样的情况:自己煞费苦心制作的PDF文档不知道在什么时候就会被别人给盗用了,那么如何才能尽量避免这个问题呢?今天带大家 ...
- Ubuntu 14.04 升级 nginx/1.8.1
参考文档:https://segmentfault.com/a/1190000008116875 https://www.ilanni.com/?p=11788 先停止nginx服务 service ...
- Java遍历Map对象的四种方式
关于java中遍历map具体哪四种方式,请看下文详解吧. 方式一 :这是最常见的并且在大多数情况下也是最可取的遍历方式.在键值都需要时使用. Map<Integer, Integer> m ...
- 解决idea server 控制台乱码问题
如果网上其他方式不奏效,可尝试下面方法: 找到tomcat 的配置文件:"D:\Program Files\apache-tomcat-9.0.17\conf\logging.propert ...
- spring-data-rest的魔力 10分钟实现增删改查
目录 创建项目 启动项目 添加person 查看person 及 person 列表 条件查询 分页查询 controller 去哪里了 自定义 spring-data-rest 魔力之外的contr ...
- Mac Segmentation fault: 11
同样一份代码,在windows10编译运行都没问题.但在mac上运行报Segmentation fault: 11错误. 原因是有指针被定义但是没有分配空间便传入函数,如 double *x; 因为M ...
- 关于DataTable序列化的事儿
今天写了一个小demo,从数据库中读取到了dataTable,想序列化成json字符串,然后传到前端,进行页面展示,其实很简单的一个步骤,谁知道它出错了!!! 出错的原因是:序列化类型为XX的对象时检 ...
- python-MYSQL(包括ORM)交互
1.首先,我们必须得连上我们的MYSQL数据库.个人遇到连不上MYSQL数据的问题主要有:数据库的权限问题.数据库表权限的问题 同时获取数据库中的数据等. //==================== ...
- BZOJ1386 : [Baltic2000]Stickers
显然每一位的限制独立,对于每一位求出仅限制该位下的最大数,然后求最小值即可. 假设当前要求数字$d$的答案: 考虑填数字的过程,可以看作依次考虑一个序列中的每个数,当前缀和$<0$时退出. 设$ ...