虽然我们可能会用speedtest之类网站进行上下传的速度的测试,那如果我们想测自己的Server的速度呢?
像是用户在别的国家,连到我们的主机速度快慢 ,这时self-hosted的测试工具就很方便啦。
最新版本的phpenv在services的yml档中,添加了openspeedtest.yml罗。
version: '3.6'
services:
fastapi:
image: openspeedtest/latest
ports:
- ${HTTP_PORT-3000}:3000
restart: unless-stopped
networks:
- dlaravel_net
networks:
dlaravel_net:
我们可以用一行docker命令来启动,可到官网查看,我帮大家拷过来了如下:
docker run --restart=unless-stopped --name openspeedtest -d -p 3000:3000 -p 3001:3001 openspeedtest/latest
其实满简单的,这里介绍用phpenv来启动的流程,我如何做的
一、因为我要用独立的环境,所以我透过下方命令,把services/openspeedtest.yml进行软连结,放到上层目录。
ln -s services/openspeedtest.yml ost.yml
名称自己订,我就叫他ost.yml,实际运行画面如下:
二、因为我的phpenv有大量的环境设置档,我可以透过如下命令检查那些./port是我没用的,必免冲突。
会出现一堆envs中设置档的ports,因为太多了,我们可以加个过滤。
./ports |grep HTTP_PORT
操作画面如下:
在上图中,phpenv中的./ports命令行出的埠号是会依序排列由小到大排列的,我大概看的出来1061应该可以用。
三、在这里我会用Linux的netstat命令再进行一次验证,确认1061没有被Listen。
sudo netstat -ntlp|grep :1061
相反的,如果连接埠是被开启的,就会显示在画面上了,类似下方这样,那怎么辨呢,就换个不会冲的连接埠🥲
正常情况下,应该是不会冲到这个port的,会像下方这样。
四、设置openspeed的环境设置档,指定使用的yml档,项目名称跟开启的连埠埠即可。
在这里我命名为openspeed,放到envs目录。
DEFAULT=ost
PROJECT=speedtest
HTTP_PORT=1061
实际画面如下图,DEFAULT=ost代表的是在上面第一步中我运行的软连结 ost.yml。
完成了设置档后,我们就可以来切换环境啦,运行./link,切换到openspeed的环境。
在上方的services/openspeedtest.yml中可以看到,他是直接用官方的image的(openspeedtest/latest),所以我们不用build啦,直接给他启动下去。
五、运行./start命令启动环境,没有image的情况下,会自动下载,有image时,就会直接启动了。
./start
实际操作画面: (用./start启动,用./console ps查看状态)
六、在另一台电脑直接测吧,这里我是用内网测试,压画面上的Start即可测试,
因为我是10G网络,所以测出来接近10000Mb,看起来满正常的。
No Comment
Post your comment