一、安装Docker 环境

1、安装必要的系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
2、添加软件源信息
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、更新并安装docker-ce
yum makecache fast
yum -y install docker-ce
4、设置开机时自动启动
systemctl enable docker
5、查看docker运行状态
systemctl status docker
6、设置开启自启镜像xxx
docker update --restart=always xxx

下载Docker-compose

curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

或者使用国内镜像源加速下载

sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

二、拉取相关镜像

STF镜像
docker pull openstf/stf:latest
rethinkdb镜像
docker pull rethinkdb:latest
openldap镜像
docker pull osixia/openldap
ldapadmin镜像(hosts换成自己的IP)
docker run -d --privileged -p 8080:80 --name myphpldapadmin --env PHPLDAPADMIN_HTTPS=false --env PHPLDAPADMIN_LDAP_HOSTS=172.17.0.1 --network bridge --detach osixia/phpldapadmin

三、创建容器实例

启动LDAP (一定要开启防火墙并允许端口访问)
docker run -d --privileged -p 389:389 --name openldap -v /data/openldap/ldap:/var/lib/ldap -v /data/openldap/slapd.d:/etc/openldap/slapd.d --network bridge --hostname openldap-host --env LDAP_ORGANISATION="test" --env LDAP_DOMAIN="test.com" --env LDAP_ADMIN_PASSWORD="httech" --detach osixia/openldap
启动rethinkdb数据库(优先启动)
docker run -d --name rethinkdb3 --privileged=true -v /srv/rethinkdb3:/data --net host rethinkdb:2.3 rethinkdb --bind all --cache-size 2048 --http-port 8090
启动stf(最后的ip地址参数为本机的局域网ip地址)(一定要添加参数 --allow-remote)
docker run -d --name stf3 --privileged=true --net host devicefarmer/stf stf local --allow-remote --no-cleanup --no-screen-reset --public-ip 172.31.16.3 --provider-min-port 17000 --provider-max-port 18000 --auth-type ldap --auth-options '["--ldap-url","ldap:172.31.16.3", "--ldap-bind-dn","CN=admin,DC=huitun,DC=com","--ldap-search-dn","DC=huitun,DC=com", "--ldap-bind-credentials","httech","--ldap-search-field", "uid"]'
启动LDAPADMIN
docker run -d --privileged -p 8080:80 --name myphpldapadmin --env PHPLDAPADMIN_HTTPS=false --env PHPLDAPADMIN_LDAP_HOSTS=172.17.0.1 --network bridge --detach osixia/phpldapadmin
利用LDAP建立对应的账户。(一定要设置email)

查看stf服务

  • 打开浏览器输入 172.31.16.3:7100访问stf服务

并输入建立好的账户

----------------------------------------------------------------------------------------------------------------------

由于STF内部机制问题启动必须先启动rethinkdb数据库再启动STF,所以就改为docker-compose启动

vim  docker-compose.yml
#docker compose编排顺序启动服务脚本
version: "3"
services:
# 指定服务名称
rethinkdb:
image: rethinkdb:2.3
restart: always
command: rethinkdb --bind all --cache-size 8192 --http-port 8090 --no-update-check
privileged: true
network_mode: "host"
volumes:
- "/srv/rethinkdb3:/data"
network_mode: "host"

stf3:
image: devicefarmer/stf
restart: always
privileged: true
network_mode: "host"
command: stf local --allow-remote --no-cleanup --no-screen-reset --public-ip 172.31.16.3 --provider-min-port 17000 --provider-max-port 18000 --auth-type ldap --auth-options '["--ldap-url","ldap:172.31.16.3", "--ldap-bind-dn","CN=admin,DC=test,DC=com","--ldap-search-dn","DC=test,DC=com", "--ldap-bind-credentials","httech","--ldap-search-field", "uid"]'

至于ADB安装就看是使用docker 还是安装在宿主机上吧!

--------------------------------------------此处略

我写了一个简单的adb 连接脚本如下:

#!/bin/bash
for i in {4..48}
do
adb connect 172.31.16.$i
done

至此结束!!!!