Docker - 使用 Jenkins 映象建立容器,並搭建 Python + Pytest +Allure 的自動化測試環境

小菠蘿測試筆記發表於2020-11-10

如果你還想從頭學起 Docker,可以看看這個系列的文章哦!

https://www.cnblogs.com/poloyy/category/1870863.html

 

安裝 Docker

直接參考我這篇文章哦:https://www.cnblogs.com/poloyy/p/13921450.html

 

下載 Jenkins 映象

搜尋 jenkins 映象

docker search jenkins

重點講下前三個

  1. 第一個是官方的映象,但是版本很舊,不推薦
  2. 第二個映象雖然不是官方的,但是 jenkins 的版本會跟隨 jenkins官方的版本,也就是說會保持拉下來的映象的 jenkins 版本是最新的,推薦,我也用這個
  3. 第三個映象是中文 jenkins 映象, 但是映象的系統不是我們所熟悉的 centos、ubuntu、Debian 等,而是 Alpine,安裝依賴庫的方式也不常見,不推薦

 

下載 jenkins 映象

docker pull jenkins/jenkins

這樣就會下載最新版本的 jenkins 映象啦

 

檢視本地映象

docker images 

 

建立 Jenkins 容器

在主機下建立一個目錄

用於掛載目錄

mkdir -p /var/jenkins_node

 

給掛載目錄一個最高許可權

可讀可寫可執行

chmod -R 777 /var/jenkins_node

 

建立與啟動 jenkins 容器

  • -d:守護模式
  • -uroot:使用 root 身份進入容器,推薦加上,避免容器內執行某些命令時報許可權錯誤
  • -p:主機 80 埠對映容器的 8080 埠,後面訪問 jenkins 直接訪問主機 ip 就行了,不需要加 8080 埠
  • -v:目錄對映
  • --name:自定義一個容器名稱
  • 使用上面推薦的 jenkins/jenkins 映象
docker run -d -uroot -p 80:8080 --name jenkins1 -v /var/jenkins_node:/var/jenkins_home jenkins/jenkins

 

檢視容器是否執行

docker ps

 

進入 jenkins 容器 CLI 介面

docker exec -it -uroot jenkins1 bash

這裡也可以指定 root 身份進入容器

 

前置準備

# 獲取最新的軟體包
apt-get update

# 升級已安裝的軟體包
apt-get upgrade

# 提前安裝,以便接下來的配置操作
apt-get -y install gcc automake autoconf libtool make
apt-get -y install make*
apt-get -y install zlib*
apt-get -y install openssl libssl-dev
apt-get install sudo

 

安裝 Python 環境

下載 python

cd /usr/local/src
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
tar -zxvf Python-3.6.8.tgz
mv Python-3.6.8 py3.6
cd py3.6

 

make 編譯安裝

在 /usr/local/src/py3.6 安裝目錄下執行下面的命令

./configure --prefix=/var/jenkins_home/py3.6
make && make install

 

新增軟連結

新增 python3 軟連結

ln -s /usr/local/src/py3.6/bin/python3.6 /usr/bin/python3

 

新增pip3軟連結

ln -s /usr/local/src/py3.6/bin/pip3 /usr/bin/pip3

本身有的話忽略就行

 

驗證 python3 環境

敲 python3 和 pip3 有下圖的結果就是正常了

 

安裝專案所需的庫

首先

需要在 python 專案生成一個 requirement.txt,具體教程可以看

https://www.cnblogs.com/poloyy/p/13953232.html

 

然後

  • 將 requirement.txt 上傳到主機
  • 從主機複製到容器內 docker cp requirement.txt jenkins1:/usr/local/src 

 

最後安裝專案所需的庫

pip3 install -r requirements.txt

 

安裝 Allure 環境

官網下載 allure 包

https://github.com/allure-framework/allure2/releases

選個最新版本的去下就行,或者自己挑一個版本

 

將壓縮包傳送到容器內

  1. 先將包上傳到主機
  2. 然後從主機複製到容器內
docker cp allure-commandline-2.13.6.zip jenkins1:/usr/local/src

 

解壓包

unzip allure-commandline-2.13.6.zip

 

賦予資料夾所有內容最高許可權

mv allure-2.13.6 allure
chmod -R 777 allure

 

配置 allure 和 py 環境變數

cat >> /etc/profile << "EOF" 
export PATH=/usr/local/src/allure/bin:$PATH 
export PATH=/usr/local/src/py3.6/bin:$PATH 
EOF

記得一行一個回車哦,不然就直接複製貼上

 

更新環境變數配置檔案

source /etc/profile

 

驗證環境變數

allure --version
python3 --version

 

配置 JDK 環境變數

檢視當前的系統已配置的環境變數

export

這裡可以看到很多容器本身自帶的環境變數

  • Jenkins 的版本
  • JDK 的安裝路徑

 

配置 JDK 環境變數

cat >> /etc/profile << "EOF" 
export PATH=$JAVA_HOME/bin:$PATH 
EOF

 

更新環境變數配置檔案

source /etc/profile

 

相關文章