Docker搭建Robot Framework环境

  1. 云栖社区>
  2. 博客>
  3. 正文

Docker搭建Robot Framework环境

时间之弧 2018-04-12 15:44:00 浏览678
展开阅读全文

基础镜像选择Alpine Linux,关于Alpine的介绍参见Alpine Docker 安装 bash。Dockerfile内容如下:

FROM alpine:3.7

MAINTAINER Rethink shijianzhihu@foxmail.com

RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/main/" > /etc/apk/repositories

# 加--virtual 会报错
RUN apk update \
           && apk upgrade \
           && apk add --no-cache bash python python-dev py-pip mysql-dev build-base libffi libffi-dev \
           #&& python -m ensurepip \
           #&& rm -rf /usr/lib/python*/ensurepip \
           && pip --default-timeout=1000 install --upgrade pip setuptools \
                robotframework \
                robotframework-databaselibrary \
                robotframework-requests \
                robotframework-seleniumlibrary \
                robotframework-yamllibrary \
                robotframework-faker \
               # PyMySQL \
          && rm -rf /var/cache/apk/* \
          && rm -rf ~/.cache/* \

ENV PYTHON_VERION 2.7.14

#CMD ["python"]

关于Dockerfile的内容,有几点需要注意:

  1. 以上安装的python版本是2.7.14,对于rf框架来说,这个版本是可以的,如果想安装3.x版本的python,清华大学的apk源中也提供了3.5.2版本,只需要把上面Dockerfile内容中所有的python改为 python3,把pip改成pip3就可以了;
    img_aa5e3db2c0e3122fbc971c09422eceec.png
    apk源中的Python版本
  2. 以上只安装了PySQL模块,如果是连接其他数据库,请自行修改内容;
  3. 为了方便的进入容器操作,额外为Alpine安装了bash;
  4. Dockerfile的内容非常灵活,可以根据自己实际需要,为dockerfile添加CMD和ENTRYPOINT命令,二者结合后可以更方便的执行pybot命令;

启动容器实例进行测试,如下:

[root@JDu4e00u53f7 ~]#  docker run --rm alpine-py27 python --version
Python 2.7.14
[root@JDu4e00u53f7 ~]# docker run  --rm -v /opt/docker/alpine-py/:/alpine-py  alpine-py27 python /alpine-py/hello-world.py
hello world

【To be continue...】

网友评论

登录后评论
0/500
评论
时间之弧
+ 关注