Docker STF 折腾之路 最后换成 Docker 来安装

396266318 · 发布于 2017年10月12日 · 最后由 0x88 回复于 2017年10月17日 · 693 次阅读
本帖已被设为精华帖!

STF docker 方式安装

准备材料

  • VirtualBox 虚拟机 Ubuntu 系统盘
  • 安装 docker
  • stf 镜像

虚拟机安装以及安装Ubuntu 操作系统滤过

  • 更新软件 sudo apt-get update
  • 安装 sudo apt-get install docker
  • 安装 sudo apt-get install docker.io
  • 查看 docker 镜像 sudo docker images

拉去STF相关镜像

  • sudo docker pull openstf/stf:latest # STF镜像
  • sudo docker pull sorccu/adb:latest # android adb 镜像
  • sudo docker pull rethinkdb:latest # rethinkdb 镜像
  • sudo docker pull openstf/ambassador:latest
  • sudo docker pull nginx:latest # nginx 代理镜像
  • 查看已经拉去好的镜像 sudo docker images

配置好虚拟机的网络桥接模式

  • 配置虚拟机网卡为桥接模式

  • 查看本机的IP地址 ifconfig

  • 192.168.1.100 这个IP地址是根据你所在的网络自动分配的

  • 如 enp0s3 192.168.1.100 在物理机上 ping 192.168.1.100 是否能ping通

启动镜像

  • 先启动一个数据库
    docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090

  • 再启动adb service
    docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest

  • 再启动stf 启动的时配置的IP地址为你虚拟机桥接的网址 enp0s3
    docker run -d --name stf --net host openstf/stf stf local --public-ip 192.168.1.100

  • 查看 启动的docker镜像 命令: sudo docker ps -a

在虚拟机中打开浏览器查看 STF 服务

  • FireFox 输入地址 192.168.1.100:7100

连接测试设备

  • 从物理机中连接android 测试设备

STF上操作真机

遇到的坑

  • 参考链接 https://testerhome.com/topics/2988
  • 参考链接 https://testerhome.com/topics/3083
  • 在 Ubuntu 中根据 论坛的方法安装,总是遇到一些错误,所以放弃了
  • 在 Mac 上也是安装过 遇到npm 安装 stf 服务有些插件下不下来,所以也是放弃了,后面改用docker 服务来安装,简单快速,省时间
  • 如果需要二次开发 STF 还是需要在本地安装
共收到 8 条回复
16107

github上有一个比较全面部署stf的脚本 https://github.com/thinkhy/deploy-stf-docker ,可以参考下。我在Ubuntu16.04下部署成功了,还是挺方便的。

4804
396266318 · #2 · 2017年10月12日 作者


只要执行这个 deploy_stf.sh 就可以了吗?

16107
4804396266318 回复

是的,不过他这个脚本里检测本地ip和dns的在我这不太准确,建议手动把.sh、.nginx上的ip地址和dns手动设置下。

4804
396266318 · #4 · 2017年10月13日 作者
16107pilipala195 回复



通过 deploy_stf.sh 构建成功的docker 镜像,运行起来后,STF访问不了

6853

看readme就装上的人路过

104 seveniruby 将本帖设为了精华贴 10月15日 12:27
605

感觉用 ubuntu 虚拟机有点蛋疼,我们是物理机用 ubuntu ,然后 docker + nginx 部署。stf local 适合试用,真正用还是结合 nginx 各个组件独立部署比较好。

4804
396266318 · #8 · 2017年10月16日 作者
605chenhengjie123 回复

是的,如果是在测试内部使用 Docker 搭建是可以的,如果提供给公司内部使用,需要进行设备管理,以及使用培训

5512

docker环境搭起来以后不要用docker来连接手机,而是通过子服务器的方法来连接会比较合理,stf --provider ,后面参数忘了。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册