前面部分请参考32bit Linux安装和启动jenkins,
http://www.jianshu.com/p/d026d2b4a212
构建Appium镜像的Dockerfile文件,
#This docker file uses the fedora image
#Version 1- Edition 1
#Author: Fredric,Zhu
FROM fedora_local:20
MAINTAINER fredric Fredric2010@outlook.com
##安装nodejs
ADD nodejs /root/nodejs
RUN cd /root/nodejs/node-v8.9.3-linux-x86/bin && cp node /usr/bin/node
RUN cd /root/nodejs/node-v8.9.3-linux-x86/lib/node_modules/npm && ./configure && make install
##安装cnpm
RUN /usr/bin/npm install -g cnpm
##安装appium
RUN /usr/bin/cnpm install -g appium
##安装java
RUN rpm --rebuilddb && yum install -y java-1.8.0-openjdk-devel.i686
##安装安卓sdk
ADD androidsdk /root/androidsdk
RUN rpm --rebuilddb && yum install -y android-tools
RUN cp /usr/bin/adb /root/androidsdk/platform-tools/adb
RUN cp /usr/bin/fastboot /root/androidsdk/platform-tools/fastboot
#设置环境变量
ENV ANDROID_HOME /root/androidsdk
ENV PATH /root/androidsdk/platform-tools:/root/androidsdk/tools:$PATH
##构建安卓appium代码目录
RUN mkdir /root/appium_android
##安装Appium Python客户库
RUN rpm --rebuilddb && yum install -y python-pip
RUN pip install Appium_Python_Client
WORKDIR /root/appium_android
Dockerfile中用到的文件,
1.nodejs安装包,
https://pan.baidu.com/s/1miKLWO4
2.androidsdk安装包,
https://pan.baidu.com/s/1qYeGppM
3.启动容器语句,
sudo docker run -ti --privileged=true --name=appium -v /dev/bus/usb:/dev/bus/usb -v /home/fredric/appium_android:/root/appium_android appium_local2 start.sh test.py
4.start.sh脚本,
#!/bin/bash
ARG_COUNT=1
E_BAD_ARGS=61
if [ $# -ne "$ARG_COUNT" ]
then
echo "Usage:`basename $0` filename"
exit $E_BAD_ARGS
fi
appium &> appium.log &
python "$1"
5.后续运行脚本,
docker start appium
6.或者 ,
sudo docker run -ti --privileged=true --name=appium_sh -v /dev/bus/usb:/dev/bus/usb -v /home/fredric/appium_android:/root/appium_android appium_local2 /bin/bash
docker start appium_sh
docker exec -ti appium_sh adb devices
docker exec -ti appium_sh appium
docker exec -ti python test.py