by Devin Yang

建立于: 1年前 ( 更新: 1年前 )

虽然我们可能会用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,看起来满正常的。

 

 

Tags: openspeedtest docker phpenv

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


docker laravel

闲聊D-Laravel的console命令

D-Laravel的console命令让我们快速的了解他运行了什么。如果使用docker-compose是怎么运行的呢? 我们来看看吧。

docker,cli

Docker容器格式化显示

我觉的如果要写一些自动化功能,或许能够格式化的输出容器内容还满有用的。以下一些Docker容器格式化显示命令的参考范例

docker,laravel

用Docker创建Lravel开发环境超简单

Laravel 5.5系统环境您准备好了吗? laravel/framework 5.5.x-dev requires php >=7.0 -> your PHP version (5.6.30) does not satisfy that requirement. 这篇文章描述如何使用Docker创建Laravel的开发环境。 有了简单到爆炸的D-Laravel简易bash, 不要在说我无法创建Laravel的开发环境了。