本文主要是讲:
docker安装启动jenkins容器,jenkins使用宿主机的JDK、Git、NodeJS、Docker
文章目录
一、安装依赖的工具
Linux下安装docker、jdk、git、nodejs已在前面文章说了,具体看
二、docker下启动jenkins容器
以安装LTS版本为例
拉取镜像可查看:https://hub.docker.com/r/jenkins/jenkins
1、下载并启动
# 拉取镜像
docker pull jenkins/jenkins:lts-jdk11
# 启动
docker run --name jenkins -u root --restart=always -d -p 8080:8080 -p 50000:50000 \
-v /var/jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-v /usr/local/jdk/jdk-11.0.8:/usr/local/jdk/jdk-11.0.8 \
-v /usr/local/git/bin/git:/usr/local/git/bin/git \
-v /usr/local/nodejs:/usr/local/nodejs \
jenkins/jenkins:lts-jdk11
其中
如果已经有jenkins容器启动,不想使用可以使用以下命令删掉:
# 停止所有容器
docker stop $(docker ps -a -q)
# 删掉所有容器
docker container rm $(docker container ps -aq)
# 删掉jenkins的地址
rm -rf /var/jenkins_home
2、登录jenkins
输入url:http://192.168.31.230:8080/
查看密码,并输入
cat /var/jenkins_home/secrets/initialAdminPassword
安装插件选择第二个(选择插件来安装)
只选择这两个插件(汉化使用),以后需要其它的插件,继续安装即可,可节约安装时间。
安装完成,设置用户名密码
设置完成,一步一步保存,即可跳转到登录成功首页
三、Jenkins插件管理
1、修改Jenkins插件下载地址
①、插件更新地址
依次进入Manage Jenkins --> Manage Plugins --> Advanced,找到Update Site。
将更新源重 https://updates.jenkins-ci.org/update-center.json 替换成: https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/stable/update-center.json
①、更换配置文件中的源地址
进入jenkins安装目录,修改default.json
cd /var/jenkins_home/updates
sed -i 's/https:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json \
&& sed -i 's/https:\/\/updates.jenkins.io\/download\/war/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins\/war-stable/g' default.json \
&& sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json
在浏览器输入:http://192.168.31.230:8080/restart ,重启Jenkins
2、Jenkins升级到最新的LTS版本
目前是Jenkins 2.319.1版本,升级到提示的LTS版本
3、设置成中文
依次进入Manage Jenkins --> Configure System
找到Locale,输入zh_cn,勾选;应用-保存即可
4、安装所依赖的插件
安装以下插件:Pipeline、NodeJS、Git、Credentials Binding
四、Jenkins配置全局工具
依次进入Manage Jenkins --> Global Tool Configuration(全局工具配置)
JDK、Git、NodeJS的配置如下:
五、配置凭据
进入jenkins容器
# 进入容器
docker exec -it 容器ID /bin/bash
# 生成凭据(输入命令一直点回车按键即可)
ssh-keygen -t rsa -C "xiaowang"
# 查看生成的公钥,放到对应的平台上(腾讯工蜂为例)
cat /root/.ssh/id_rsa.pub
# 查看私钥,配置在jenkins上
cat /root/.ssh/id_rsa
# 退出容器,使用快捷键
ctrl + p + q
1、公钥配置
2、私钥配置
进入 Credentials --> System --> Global credentials (unrestricted)
六、Git远程拉取代码报错
报错如下:
Failed to connect to repository: Command "usr/local/git/bin/git ls-remote -h-- git@git code tencent.com:/***.git HEAD" returned status code 128:
stdout:
stderr: No RSA host key is known for git.code.tencent.com and you have requested strict checking
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
在jenkins容器里输入以下命令,重新查看git报错就解决了
# 进入容器
docker exec -it 容器ID /bin/bash
ssh -T git@git.code.tencent.com
yes