openstf的搭建本文分为3大步
一、安装ubuntu
装ubuntu比装windows系统还要简单,步骤就不详细写了。有一个注意事项就是,不要选择UEFI安装!为什么linux系统安装要选择legency模式安装呢,因为uefi安装可以直接把引导权限交给硬盘上的efi分区,如果用uefi来安装linux系统,安装成功后linux系统会由于缺少引导进入不了系统。
二、在ubuntu上安装docker
$ sudo apt-get update # 更新软件包
$ sudo apt-get install docker-ce docker-ce-cli containerd.io # 安装Docker
三、启动stf相关镜像
1.拉取镜像
$ 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 镜像
2.查看镜像(可以确定拉取成功了的话不查看也可以的)
# docker images
3.启动镜像
# docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090 # 启动rethinkdb数据库
# docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest # 启动adb
# docker run -d --name stf --net host openstf/stf stf local --public-ip 192.168.XXX.XXX # 启动stf 这里填写的IP地址可以通过ifconfig命令查询(是主机的ip 不是docker的ip)
4.检查镜像是否启动成功
# docker ps
以上3个镜像全部启动成功后可以进行第5步
5.访问http://192.168.XXX.XXX:7100
一些补充:
a.访问stf的时候最好不要同时开着抓包软件,例如charles
b.服务器的防火墙不要打开,不然访问时会网页经常弹断开连接
c.可以给服务器手动分配个ip,不然自动获取的ip有可能会发生变化哦
d.服务器断电或关机后重启,docker和docker里面的镜像都需要重新手动启动,如何解决呢?首先让docker自动重启,前人之述备矣,随便贴个链接吧 https://segmentfault.com/a/1190000019783852 其次让镜像自动重启,可以在启动镜像的时候加上参数--restart=always或者对镜像 # docker update --restart=always +镜像名字
e.删除启动失败的镜像
# docker rm $(docker ps -a -q)
f. bios设置“last power status”可以让服务器断电后自动重启