使用Coding和Github来实现双线部署

2021-06-11 10:37:57 浏览数 (1)

Coding 简介

Coding 是一个类似于 Github 的一站式软件研发协作管理平台,有必要说明的是,新版 Coding 现已经被腾讯云收购,静态页面的部署依赖于腾讯云的对象存储功能,虽然对于新用户会提供几个月的免费流量包,但是之后就会 开始收费。 就我个人观点来说,收费的至少存在契约关系,毕竟腾讯的东西,只要充钱就能解决问题这点还是有口皆碑的。不过按照大佬们的说法,这种收费机制是存在隐患的。如果遇上仇家或者闲得慌的,写个 python 脚本多线程访问来刷你的流量,一个月饭钱可能一下子就付诸流水了。另外,Coding 的自定义域名以及静态网页部署都需要在腾讯云进行实名认证,需要准备好微信和身份证,微信还需要绑定过银行卡。另外,Coding 在没有备案域名的情况下,只能提供海外加速线路,这样就和 github 的线路串了。 所以,如果你有了足够的心理准备,请继续看以下详细内容。

使用教程

  1. 首先是 Coding 的注册,访问 Coding 官网, 按照要求逐步完成团队注册和实名认证。记住,团队注册以后你的账号本身就是团队所有者的身份,所以在之后跳出的邀请成员那页就淡定的按 ESC 退出邀请即可,没必要再添加一个成员账号。
  2. 完成注册和实名后,进入工作台。 选择项目,新建一个项目,项目类型选择 DevOps,DevOps 支持静态网页持续部署。

新版 Coding 没有旧版那么多的限制,仓库名和最后的域名没有任何关联,因此命名可以随意。

  1. 完成项目创建以后,还要再这个项目内创建一个代码仓库,用来存储我们的静态页面。

仓库名称可以随意,但是必须记得勾选公开源代码,因为博客终归是要公开给别人看的。

  1. 之后我们就能获取仓库地址了,
    • 可以用 HTTP 链接,比如我是 https://e.coding.net/akilar/hexo-blog/Hexo.git
    • 也可以用 ssh,在那之前得在 coding 的头像(右上角)-> 个人账户设置 ->ssh 公钥 -> 新增公钥。ssh 公钥用 Github 配置时用到的即可。 你甚至可以给你所有的设备共用同一个 ssh 公钥,只要它们本地有相应的 id_rsa(私钥)和 id_rsa.pub(公钥)。 打开 git bash 或者任意终端 我不推荐使用 SSH 链接部署,因为用 ssh 部署偶尔会遇到端口被占用的情况导致部署失败。这不利于我们之后使用 Github Action 实现全自动部署。
代码语言:javascript复制
git config --global user.name "akilarlxh" # 记得替换用户名为自己的
git config --global user.email "akilarlxh@gmail.com" # 记得替换邮箱为自己的
ssh-keygen -t rsa -C akilarlxh@gmail.com # 记得替换邮箱为自己的
less ~/.ssh/id_rsa.pub # 复制后可按 Ctrl D 返回
  1. 打开 Hexo 站点配置文件_config.yml, 找到 deploy,按照下图格式填入你的代码仓库地址。 注意缩进和 “:” 后面的空格。此处建议所有的 Deploy 链接都使用 HTTPS 链接,便于之后在使用 Github Action 实现全自动部署的 Token 配置。
  1. 之后运行 hexo clean && hexo g && hexo d 三件套即可将页面部署在代码仓库内。
  2. 然后到项目里选择持续部署 -> 静态网站,会提示需要实名认证才能使用静态网站。

网站名称随意,网站类型选择静态网站,不要选择 Hexo,如果选择 Hexo,那你应该使用博客源码来编译,但是依然有 bug,它会提示站点配置文件_config.yml 丢失,所以, 网站类型不要选择 Hexo

  1. 之后博客会开始自动部署

完成后就能通过自动生成的那个长的要死的域名来访问生成的博客网站了。因为新版 coding 是把静态页面部署在腾讯云的对象存储上的,存储桶的默认名总会很长,而且对象存储是按流量计费的,白嫖的同学大概只能享受 6 个月的免费流量包。之后将会收费

  1. 绑定自定义域名 绑定自定义域名需要开启腾讯云的 CDN 服务,这点请放心大胆的开,只要开通以后不要去用腾讯云的 CDN 加速就不会产生 CDN 流量费。 开通 CDN 以后即可自定义域名。输入自定义域名,去 dnspod 上添加相应的解析记录。腾讯云会自动帮你申请 SSL 证书,如果之前的各种认证模板都已经审核通过的话,大概 10 分钟左右就能下发证书。

添加示例

  1. 之后我们给域名解析添加线路分类,将 Github 相关的线路配置为境外,Coding 的线路配置为默认或者境内。至此,整个双线部署的过程就算完成了。

可能遇到的 bug

  1. 双线部署完成后无法通过域名访问
    • 域名解析生效需要时间,大约十分钟。
  2. 域名健康监测提示 301 或 308
    • 这是当然的,因为域名后面的链接原本应该是到 username.github.io 的,现在被重定向到 coding 去了啊。
  3. 手机可以访问网站,电脑却打不开
    • 电脑的 DNS 解析和手机的 DNS 解析是不同的,手机一般是使用的服务商的 DNS 解析,电脑则是本地默认的。 有两种解决方案。
    • 直接参考这篇教程:访问 github 或部署在 gitpage 上的网站过慢的解决方案,通过修改 hosts 来解决。
    • Win10 用户可以打开设置 -> 网络和 Internet-> 更改适配器选项,选择当前网络,右键属性,找到 Internet 协议版本 4(TCP/IPv4),设置自动获得 IP 地址,并将 DNS 设置为 223.5.5.5 和 223.6.6.6 (此处使用的是阿里的 DNS,也可以自行百度一下靠谱的 DNS 服务商)。

0 人点赞