前置条件
- 一台云服务器
- 云服务器上已安装Docker
- 了解Docker基础
使用Docker安装Jenkins
参考github文档安装
docker run --name docker_jenkins --privileged=true -itd -p 8080:8080 -p 50000:50000 --restart=on-failure -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts-jdk11
- –name:自定义容器名称
- –privileged=true:赋予该容器更高的权限。几乎与宿主机上的root用户拥有相同的权限。能够在容器中使用docker命令
- -itd :容器内增加交互终端
- -v jenkins_home:/var/jenkins_home:存储Jenkins数据,这几乎是必须的。如果不设置,重启Jenkins容器后,Jenkins将会被重置
安装成功后,访问服务器8080端口
获取管理员密码
有两种方法可以获取到Jenkins管理员密码,如下所示:
- 打印Jenkins日志:
docker logs -f [container_id]
。日志中就存有初始化的管理员密码
- 进入容器内部,根据提示找到初始密码所在位置查看
- 进入容器:
docker exec -it [container_id] bash
- 查看密码:
cat /var/jenkins_home/secrets/initialAdminPassword
- 进入容器:
插件安装
一般选择安装推荐的插件即可,后续依然可以自行安装其他插件,或删除已安装插件
修改时区
- 左上角个人信息选择“设置”
- 拉到底选择“时区”为Asia/Shanghai
新建任务拉取GitLab仓库代码
创建全局凭据
为了能够拉取GitLab的代码,需要在Jenkins上创建凭据
- 在Jenkins容器内生成一对ssh密钥,ssh密钥生成可参考GitLab官方文档
- 选择“系统管理” => “管理凭据”
-
添加全局凭据
- 类型:选择“SSH Username with private key”
- Username: 填写GitLab用户名
- Enter directly:选中后,将生成的ssh密钥的私钥填入
- Passphrase:如果生成ssh密钥对时设置了就填写设置的内容,未设置就不需要填写
拉取GitLab仓库代码
-
Jenkins新建任务,选择 “构建一个自由风格的软件项目”
-
源码管理:选择Git,进行配置
- 安装插件时选择“安装推荐的插件” Git Plugin会自动安装,才会出现这个Git选项。否则需要先手动安装Git Plugin
- 地址填写基于ssh的仓库地址
- 凭据选择之前创建的全局凭据
- GitLab侧需要同步配置,将ssh的公钥作为项目的部署密钥,这一步参考GitLab私有化部署
- 在Jenkins容器内拉取 GitLab 仓库代码,这一步并不是可选的。当出现“Are you sure you want to continue connecting (yes/no/[fingerprint])?”,需要填写yes。
- 构建测试
出现上述页面,说明Jenkins的部署以及拉取GitLab代码成功
其他
- jenkins快速重启: url访问 ip:port/restart
- 如果想要在shell脚本中直接使用node和npm
- 安装NodeJs插件
- 系统管理 => 全局工具配置 => 找到NodeJS,新增安装 => 填写别名,选择版本
© 版权声明
文章版权归作者所有,未经允许请勿转载,侵权请联系 admin@trc20.tw 删除。
THE END