这篇文章详细的记录了在 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: 显示正在运行中的进程的信息
学习更多 http://www.runoob.com/w3cnote/linux-useful-command.html
vim 常用的几个命令:
i: 输入模式 (使用 vim 打开文件后先按一些 i, 然后再移动光标输入字符~),
w: 保存,
q: 退出,
wq: 保存并退出,
q!: 退出保存
学习更多 http://www.runoob.com/linux/linux-vim.html
下载软件: 搜 wget xxx,curl xxx
一切准备就绪, LINK START
安装 Jenkins
第一次安装的可以稍微看下 jenkins 的安装文档 https://jenkins.io/doc/book/installing/#debian-ubuntu
总之, 如果没有安装 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 把项目部署到服务器了, 在找资料的过程中, 发现很难一下就找到自己想要的, 果然, 还是得自己动手总结了.
以后也会用到, 趁现在总结一二, 以后就不要到处找文章了, 哈哈.
来源: https://www.cnblogs.com/morang/p/ubuntu-jenkins-java-install.html