STF-Ubuntu docker环境搭建-记录

STF官网地址:GitHub - DeviceFarmer/stf: Control and manage Android devices from your browser.

WSL安装

管理员方式打开cmd或者powershell,输入 wsl --install

如出现错误,参考以下步骤:

  • windows + i 快捷键打开设置 ,在左侧菜单栏找到网络和internet
  • 进入高级系统设置
  • 选择当前所用网络,点击查看其他属性,修改DNS设置,如下图所示:
    image

再次尝试管理员打开命令行,输入 wsl --install,安装成功后重启即可。

启动 Ubuntu 虚拟机:进入命令行执行 wsl

STF安装

需要的依赖:

nodejs安装方式:Index of /download/release/latest-v8.x/

wget https://nodejs.org/download/release/latest-v8.x/node-v8.17.0-linux-arm64.tar.gz

之后依赖使用docker安装

第一,第一步先下载安装docker。后续采用docker安装STF的整个环境。

安装Docker

sudo apt-get update # 更新软件包

sudo apt-get install docker-ce docker-ce-cli containerd.io# 安装Docker

docker安装出现问题,参考以下步骤:

  • 零:卸载旧版本

    Docker 的旧版本被称为 docker,docker.io 或 docker-engine 。如果已安装,请卸载它们:

    $ sudo apt-get remove docker docker-engine docker.io containerd runc
    
  • 更新 apt 包索引。

    sudo apt update
    
  • 安装依赖包:

    sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
    
  • 添加GPG密钥

    添加 Docker 的官方 GPG 密钥:

    curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> | sudo apt-key add -
    
  • 添加软件源

    对于 amd64 架构的计算机,添加清华大学TUNA软件仓库:

    sudo add-apt-repository \
       "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
       $(lsb_release -cs) \
       stable"
    
  • 如果你是ARM架构,请运行:

    echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
         $(lsb_release -cs) stable" | \
        sudo tee /etc/apt/sources.list.d/docker.list
    

二:安装 DOCKER ENGINE-COMMUNITY

更新 apt 包索引。

$ sudo apt update

安装最新版本的 Docker Engine-Community

$ sudo apt install docker-ce

三:测试

注意:如果你的网络和我一样不好使,请先行进行镜像加速再测试。

输入:

	$ sudo docker run hello-world

第二,启动docker拉取安装所需的STF的镜像。过程中可能有问题可随时使用logs命令查看容器报错。

sudo docker pull openstf/stf:latest # STF镜像

sudo docker pull sorccu/adb:latest # adb 镜像

sudo docker pull rethinkdb:latest # rethinkdb 镜像

sudo docker pull openstf/ambassador:latest # ambassador 镜像

sudo docker pull nginx:latest # nginx 镜像

第三,运行对应的容器,启动顺序按:启动rethinkdb → 在启动adb → 在启动openstf

1.启动rethinkdb 数据库

sudo docker run --restart=always -d --name=rethinkdb --net=host -v /srv/rethinkdb:/data rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090

注: -d 静默后台启动 ,–name 重命名, -v 挂载文件 --net 网络模式host

2.启动adb

sudo docker run --restart=always -d --name=adbd --privileged --net=host -v /dev/bus/usb:/dev/bus/usb sorccu/adb:latest

3.启动openstf

sudo docker run -d --name=stf --net=host openstf/stf stf local --public-ip xx.xx.xx.xx

注:xx.xx.xx.xx 为虚拟机的IP地址,此模式只能在虚拟机上启动STF

备注:查看ip地址命令:ip addr

stf运行
访问 ip:7100

出现登录界面即为安装成功: