ceajs / cea

高校统一身份验证开发框架(已集成 CPDAILY 签到&查寝插件)
MIT License
90 stars 16 forks source link

Using github action to automatically build docker image #12

Closed luckycat0426 closed 2 years ago

luckycat0426 commented 2 years ago

https://github.com/ceajs/cea/commit/a435d231b917b062c7c7e7ffaa1d313377300f50 看了一下docker 部署代码,构建用的是ubuntu默认源,在执行apt-get命令时只要连接超时一次就会构建失败,在国内网络环境下很难构建成功,增加了github action 自动构建,将会在主分支发生改动时构建docker镜像并发布到release 上面,可以直接下载镜像运行.

beetcb commented 2 years ago

嗯嗯,考虑地很到位。我昨天测试了两台机器,一个谷歌一个腾讯云的,都很快,证明国内会有些厂商给自己的服务器加上镜像(似乎是某种代理)。 你这种方案就能消除这些顾虑了,不过还有个问题,国内 github release 的访问流畅吗,下载大文件镜像不知道会不会失败?

luckycat0426 commented 2 years ago

https://hostloc.com/thread-908719-1-1.html 我遇到镜像构建失败的情况是由于腾讯云香港的机子有点问题,连接Ubuntu镜像会超时,国内现在不知道情况如何,我之前在国内使用Ubuntu默认镜像源是会出现超时的情况. github release 发布镜像有个好处,用户可以用其他工具下载下来,再传到服务器或者在本地使用.在服务器直接下载我尝试过,速度很慢,不过好像能下载完.

luckycat0426 commented 2 years ago

我现在在上海腾讯云下载镜像试试要多长时间, image 速度很慢,不过好像不会出现断连失败的情况.

luckycat0426 commented 2 years ago

image 有个几百M的layer下载很快,可能是厂商做了镜像

luckycat0426 commented 2 years ago

image 1.15g的image 耗时半个多小时,cea镜像好像只有几百m,可能也许大概会快一点吧

beetcb commented 2 years ago

image 1.15g的image 耗时半个多小时,cea镜像好像只有几百m,可能也许大概会快一点吧

我这台国内机器倒是经常卡在下载 nodejs 那步,看来用 GitHub release 方案很好,能一致地解决很多问题

luckycat0426 commented 2 years ago

docker build是小米抢购,你永远不知道哪次能构建成功,docker pull 是苹果预记发货时间,虽然很慢,但是最后总能下完镜像的. 当然用户可以用国内镜像下载加速服务,具体之后研究一下放到教程里.

beetcb commented 2 years ago

Merge !

beetcb commented 2 years ago

image

测试表明还得在 URL 后面声明分支,我改一下