Docker+Jenkins发布GitHub项目(2)-解决GitHub 443

1,534 阅读2分钟

大家好,我是半夏👴,一个刚刚开始写文的沙雕程序员.如果喜欢我的文章,可以关注➕ 点赞 👍 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师~关注公众号:搞前端的半夏,了解更多前端知识! 点我探索新世界!

前言

在上文 Docker+Jenkins发布GitHub项目(1)-配置环境|8月更文挑战,我们已经成功的连接上了GitHub,接下来我们按理说就需要开始进行部署GitHub项目的操作了,但是在配置源码管理的时候,一直会遇到这样一个报错: # hudson.plugins.git.GitException: Failed to fetch from GitHub 443,,下面针对这个问题,我们先来进行解决。 ​

 偶然?总是?

在配置 源码管理的时候

使用https 进行代码的下载

配置的是用户名和密码

但是在执行构建的时候,总是会报错 443,但是偶尔也会有几次成功下载的,所以就很奇怪!!!!!!!!!!

fatal: unable to access 'https://github.com/xxx': OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

image.png

谷歌搜索,初步尝试解决

方法1

删除/data/jenkins/workspace/project-name后重新构建

方法2 清除代理

`## 取消代理设置

  1. 方式一:通过git取消代理设置
$ git config --global --unset http.proxy
$ git config --global --unset https.proxy

在经过一番尝试之后,这两种方法偶尔会生效,大部分还是不会成功,所以这两种方法都不太适合。

为了永久解决,决定使用ssh的方式进行源码的管理!!!

永久解决:配置SSH

使用Docker安装的Jenkins

!!! 非docker安装的,忽略 第一步:进入容器

  1. 进入容器
[root@iZ2zeblcb2evknzc1xbhunZ ~]# docker exec -it 容器ID /bin/bash

  1. 使用ssh-keygen命令生成密钥 这里会生成两个密钥,一个是公有密钥,一个是私有密钥。
bash-5.1# ssh-keygen -t rsa -b 4096 -C "GitHub邮箱"

image.png

  1. 查看公钥并配置GitHub

使用cat命令,查看公钥

cat /root/.ssh/id_rsa.pub

image.png

GitHub配置生成好的公钥。 下面的链接是配置公钥的路径!

https://github.com/settings/ssh/new

image.png

查看私钥并配置项目

cat命令,查看私钥

bash-5.1# cat /root/.ssh/id_rsa

使用git@git.com 进行管理

image.png

添加私钥凭证

image.png