Docker搭建Robot Framework环境

版权声明: https://blog.csdn.net/shijianzhihu/article/details/79961740

基础镜像选择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
   RUN apk update \
           && apk upgrade \
           && apk add --no-cache bash python \
           && python -m ensurepip \
           && rm -rf /usr/lib/python*/ensurepip \
           && pip install --upgrade pip setuptools \
           && rm -rf ~/.cache/  \
           && pip --default-timeout=100  install robotframework \
           && pip --default-timeout=100  install PyMySQL \
           && pip --default-timeout=100  install robotframework-databaselibrary \
           && pip --default-timeout=100  install robotframework-requests \
           && pip --default-timeout=100  install robotframework-seleniumlibrary \
           && pip --default-timeout=100  install robotframework-yamllibrary \
           && rm -rf /var/cache/apk/* \
           && /bin/bash

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

依照Dockerfile构建容器:docker build -y alpine-py27 . ,构建完成后的镜像体积大小为67.9M;
镜像体积

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

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

【To be continue…】

猜你喜欢

转载自blog.csdn.net/shijianzhihu/article/details/79961740