1. 程式人生 > >Docker搭建Robot Framework環境

Docker搭建Robot Framework環境

基礎映象選擇Alpine Linux,關於Alpine的介紹參見Alpine Docker 安裝 bash。Dockerfile內容如下:

FROM alpine:3.7

MAINTAINER Rethink [email protected].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;
映象體積

啟動容器例項進行測試,如下:

[[email protected] ~]#  docker run --rm -it alpine-py27 python --version
Python 2.7.14
[[email protected] ~]# 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…】