Installing python 3, pip and boto3 on centos docker
Here are the steps to install python 3 on docker.
Installing python 3, pip and boto3 on centos docker
Here are the steps to install python 3 on docker.
- First download the appropriate docker image:
docker pull centos
- Start the docker container:
docker run -it -name boto3-centos centos
The -name parameter ensures that the container has the name boto3-centos . You could name it whatever you find reasonable
Install GCC compiler and other dependencies for python:
yum install gcc openssl-devel bzip2-devel libffi-devel zlib-devel -y
- Download python 3.7.x:
curl https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tgz --output Python-3.7.9.tgz
- Extract the tgz file
tar xzf Python-3.7.9.tgz
- Install Python
cd Python-3.7.9
./configure --enable-optimizations
yum install make -y
make altinstall
- Verify the version of python
python3.7 -V
>> Python 3.7.9
rm /usr/src/Python-3.7.9.tgz
Install pip:
yum -y install epel-release
curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py
python3.7 get-pip.py
pip -V
Create a virtualenv
python3.7 -m venv my-venv
Activate the virtualenv
source my-venv/bin/activate
You are in your own virtual env and doing a pip freeze should give you an empty list
If your project has a set of python libs it needs, then add it to a requirements.txt file. Below is an example of the contents of requirements.txt with only boto3 as a necessary package
boto3==1.15.11
Install your packages in the virtual env
pip install -r requirements.txt
Now when you do pip freeze you will see boto3 and all its dependencies installed
Alternate version
yum update -y
[root@a32ad429b1bb Python-3.7.9]# yum install python3
Failed to set locale, defaulting to C.UTF-8
Last metadata expiration check: 0:51:13 ago on Sat Oct 3 05:24:50 2020.
Dependencies resolved.
================================================================================
Package Arch Version Repo Size
================================================================================
Installing:
python36 x86_64 3.6.8-2.module_el8.1.0+245+c39af44f AppStream 19 k
Installing dependencies:
platform-python-pip noarch 9.0.3-16.el8 BaseOS 1.8 M
python3-pip noarch 9.0.3-16.el8 AppStream 19 k
python3-setuptools noarch 39.2.0-5.el8 BaseOS 162 k
Enabling module streams:
python36 3.6
Transaction Summary
================================================================================
Install 4 Packages
Total download size: 2.0 M
Installed size: 7.8 M
If you wanted to do this in a repeatable way, use the following Dockerfile:
[embed]Dockerfile for building image with python, pip and boto3
Copy the contents of the above and save it as Dockerfile . Then,
docker build . -t python-pip-boto3:0.1.1
docker run -it python-pip-boto3:0.1.1
You will now be inside a terminal running the in the container. Since the above dockerfile installs boto3 facilities for you, you can now use it in the python shell in the docker container:
[root@f81c0a1e50c3 tmp]# pip freeze
boto3==1.15.11
botocore==1.18.18
jmespath==0.10.0
python-dateutil==2.8.1
s3transfer==0.3.4
six==1.15.0
urllib3==1.25.11
References:
메타데이터
- post_id
- b7fa3320d31c
- slug
- installing-python-3-pip-and-boto3-on-centos-docker-b7fa3320d31c
- url
- https://medium.com/lazyycoder/installing-python-3-pip-and-boto3-on-centos-docker-b7fa3320d31c
- canonical_url
- https://medium.com/lazyycoder/installing-python-3-pip-and-boto3-on-centos-docker-b7fa3320d31c
- author_url
- https://medium.com/@lazeecoder
- status
- ok
- fetched_at
- 2026-06-10 21:21:38