以stairspeedtest-reborn项目为对象,最新的Docker镜像还是mylolis/stairspeedtest,已经是3个月前的了。原项目最近的修改是11月9号的,所以我打算基于最近修改重新定制一个Docker镜像,虽然我也不知道更新了什么,但是用最新的就完事儿了。
编辑Dockerfile
首先Fork原项目,然后Clone到本地(也可以在线新建)。
点击Actions ,点击I understand my workflows, go ahead and enable them
绿色按钮开启工作流程
在根目录下新建Dockerfile
文件,文件内容参考stairspeedtest-reborn/Dockerfile。
修改两处地方,一是我的项目地址,二是版本号,为了和原项目保持一致,这里就不修改了
修改完成后推送到仓库,如果是在线创建的就没有这个步骤
此时Actions开始自动编译,等待编译完成,第一次编译用了32分钟,第二次10分钟。
如果觉得时间太久了,可以在.github/workflows/
目录下编辑build.yml
文件,删除其他命令,只保留linux64_build
。我们只需要这个。
俺又不知道怎么把编译好的文件打包上传到Release,只能用笨办法。编译完成后在下面找到stairspeedtest_reborn_liunx64
文件,点击下载到本地
把下载好的文件拖到Ubuntu虚拟机,进行解压→压缩为.tar.gz
格式的压缩包
sudo apt install -y unzip #安装zip解压软件
unzip stair*.zip -d stairspeedtest #解压到指定文件夹内
tar -zcvf stairspeedtest_reborn_linux64.tar.gz stairspeedtest #再压缩成.tar.gz
删掉已经存在的v0.7.1Release,然后新建v0.7.1的Release,Create a new release
,将刚才的文件上传并发布。PS:这里要对上前面编写的Dockerfile
里的版本号
推送到Docker Hub
优点是编译速度较快,缺点是国内用户访问较慢。
登录DockerHub,点击Create Repository
新建仓库。
填写项目名称,字母必须小写,且不能有空格,选择Public
公共仓库
点击Connected
链接到GitHub
,在下面选择自己的仓库。
点击CUILD RULES
旁边的+号,可以把下面的三条规则都添加进去,格式如图
然后点击Create
完成或者点击Create & Build
完成并构建。
在Builds页面可以看到编译成功,以后每次推送都会自动开始编译
部署
部署可以参考我之前的文章docker部署ssrspeed测试节点速度,不过Daocloud同步官方有点慢,要等一个小时?
测试完成后可以删除之前的容器。
踩了好多坑啊,总算是完成了。