jenkins:Python3環境をDockerコンテナのjenkinsにインストールします

dockerを使用してjenkins環境をインストールします。jenkinsによって構築されたワークスペースディレクトリは、デフォルトでコンテナに構築されます。python3コードを実行する場合は、コンテナ内にpython3環境をインストールする必要があります。

遭遇問題

ビルド時にpip3と入力し、プロンプト:pip3:not found

ジョブのビルド後のコンソール出力コンテンツ

Started by user admin
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/yoyoketang
[yoyoketang] $ /bin/sh -xe /tmp/jenkins2225854290036644814.sh
+ pwd
/var/jenkins_home/workspace/yoyoketang
+ pip3
/tmp/jenkins2225854290036644814.sh: 3: /tmp/jenkins2225854290036644814.sh: pip3: not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

pip3:見つかりません。jenkinsコンテナ内にpython3環境がないことを示します

ジェンキンスコンテナに

Dockerコンテナを入力し、-u rootを追加して、rootユーザー権限でコンテナを入力します

docker exec -it -urootコンテナID / bin / bash

現在のオペレーティングシステムを表示するcat /etc/issue

root@cb8e397d5308:/# uname -a
Linux cb8e397d5308 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 GNU/Linux
root@cb8e397d5308:/# cat /etc/issue
Debian GNU/Linux 9 \n \l

ここで見つけたのはDebianシステム(ubuntuでもcentosでもない)です。ここではyumが利用できないため、yumと一緒にインストールすることはできません。ここでは、yumの代わりにapt-getを使用し、最初にapt-getの更新を実行します。

apt-get update

コンテナ内にpython3環境をインストールします

python3インストールパッケージをダウンロードします

コンテナの内部に入り、linux install python3環境、これを参照してくださいhttps://www.cnblogs.com/yoyoketang/p/10195102.html

root@cb8e397d5308:/var/jenkins_home# cd /var/jenkins_home/
root@cb8e397d5308:/var/jenkins_home# mkdir python3
root@cb8e397d5308:/var/jenkins_home# cd python3/
root@cb8e397d5308:/var/jenkins_home/python3# wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# tar -xvf Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# ls
Python-3.6.8  Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# cd Python-3.6.8
root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# ./configure --prefix=/var/jenkins_home/python3
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.6... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... linux
checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/var/jenkins_home/python3/Python-3.6.8':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

./configure --prefix=/var/jenkins_home/python3上記のエラーは実行中に報告されました :configure:error:$ PATHに受け入れ可能なCコンパイラが見つかりません

apt-getインストールの依存関係

これは、gccに関連する依存関係がないためです。関連する依存関係をインストールするには、yumの代わりにapt-getを使用してください。

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

コンパイルしてインストールする

/var/jenkins_home/python3/Python-3.6.8ディレクトリでmakeとmakeinstallを実行してインストールします

./configure --prefix=/var/jenkins_home/python3 --with-ssl
make
make install

ソフトリンクを追加する

python3ソフトリンクを追加します

ln -s /var/jenkins_home/python3/bin/python3.6 / usr / bin / python3

pip3ソフトリンクを追加する

ln -s / var / jenkins_home / python3 / bin / pip3 / usr / bin / pip3

環境を確認する

pip3とpython3を入力して、環境を確認します

root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# pip3

root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# python3
Python 3.6.8 (default, Jan  1 2020, 10:15:14) 
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

pip3を使用してリクエストパッケージをインストールします

pip3インストールリクエスト

sslの問題

pip3のインストール時にssl関連の問題が発生した場合:pipはTLS / SSLを必要とする場所で構成されていますが、Pythonのsslモジュールは使用できません。

これは、SSL依存パッケージyum install openssl-devel がないためです。オンラインソリューションは、Debianシステムにyumがないため、apt-getを使用してインストールします。

apt-get -y install openssl libssl-dev

インストールが完了すると、システムに付属のpython2に対応するpipインストールの問題のみを解決できますが、python3のpip3インストールの問題は解決できません。

解決策:上記でコンパイルするときにパラメーター--with-sslを追加します

./configure --prefix = / var / jenkins_home / python3 --with-ssl

makeを再実行してmakeinstallを実行するだけです

Python環境でSSLをインポートできるかどうかを確認することもできます

root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# python3
Python 3.6.8 (default, Jan  1 2020, 10:15:14) 
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> 

おすすめ

転載: blog.csdn.net/chuancheng_zeng/article/details/109758172
おすすめ