OpenSTF(Smartphone Test Farm) 是一个 web 端移动设备管理平台,可以从浏览器端远程调试、远程管理设备,类似于云测Testin(https://www.testin.cn/)所提供的真机调试服务,默认最多可支持75台可用设备。
OpenSTF 使用 NodeJs 和 AngularJs 开发,遵循 Apache Licene 2.0 开源协议,允许用户对源码进行修改发布。(源码地址:https://github.com/openstf/)
如果 PC 是 Windows 操作系统,可以通过 VMware Workstation Pro + Ubuntu 镜像部署虚拟机
修改虚拟机网络设置:
点击 VMware Workstation Pro 菜单 "编辑" - "虚拟网络编辑器" - 将 VMnet0 选择为桥接模式
点击 VMware Workstation Pro 菜单 "虚拟机" - "设置" - "网络适配器" - 选择桥接模式
# 更新 apt 包索引
$ sudo apt-get update
# 安装 apt 依赖包,用于通过 https 获取仓库
$ sudo apt-get \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# 添加 Docker 的官方 GPG 密钥
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 获取稳定版仓库
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(lsb_release -cs) \
stable"
# 拉取依赖镜像
$ sudo docker pull sorccu/adb:latest
$ sudo docker pull rethinkdb:latest
$ sudo docker pull openstf/stf:latest
$ sudo docker pull openstf/ambassador:latest
$ sudo docker pull nginx:latest
# 检查已经拉取的镜像
$ sudo docker images
# 启动容器:Rethink
$ sudo docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090
# 启动容器:ADB
$ sudo docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest
# 启动容器:STF
# 将 0.0.0.0 替换为服务机的 IP
$ sudo docker run -d --name stf --net host openstf/stf stf local --public-ip 0.0.0.0 --allow-remote
# 浏览器访问 STF 服务
http://0.0.0.0:7100/