Last update at :2024-05-18,Edit by888u
Method 1, docker pull python:3.5
Find Python images on Docker Hub:
You can check other versions of python through Sort by. The default is the latest version python:latest.
In addition, we can also use the docker search python command to view the available versions:
runoob@runoob:~/python$ docker search python NAME DESCRIPTION STARS OFFICIAL AUTOMATED python Python is an interpreted,... 982 [OK] kaggle/python Docker image for Python... 33 [OK] azukiapp/python Docker image to run Python ... 3 [OK] vimagick/python mini python 2 [OK] tsuru/python Image for the Python ... 2 [OK] pandada8/alpine-python An alpine based python image 1 [OK] 1science/python Python Docker images based on ... 1 [OK] lucidfrontier45/python-uwsgi Python with uWSGI 1 [OK] orbweb/python Python image 1 [OK] pathwar/python Python template for Pathwar levels 1 [OK] rounds/10m-python Python, setuptools and pip. 0 [OK] ruimashita/python ubuntu 14.04 python 0 [OK] tnanba/python Python on CentOS-7 image. 0 [OK]
Here we pull the official image, labeled 3.5
runoob@runoob:~/python$ docker pull python:3.5
After the download is completed, we can find the image with the REPOSITORY of python and the label of 3.5 in the local image list.
runoob@runoob:~/python$ docker images python:3.5 REPOSITORY TAG IMAGE ID CREATED SIZE python 3.5 045767ddf24a 9 days ago 684.1 MB
Method 2: Build through Dockerfile
Create Dockerfile</p>
First, create the directory python to store related things later.
runoob@runoob:~$ mkdir -p ~/python ~/python/myapp
The myapp directory will be mapped to the application directory configured by the python container.
Enter the created python directory and create a Dockerfile.
FROM buildpack-deps:jessie # remove several traces of debian python RUN apt-get purge -y python.* # http://bugs.python.org/issue19846 # > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK. ENV LANG C.UTF-8 # gpg: key F73C700D: public key "Larry Hastings" imported ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D ENV PYTHON_VERSION 3.5.1 # if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value ' '" ENV PYTHON_PIP_VERSION 8.1.2 RUN set -ex / && curl -fSL "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz" -o python.tar.xz / && curl -fSL "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc" -o python.tar.xz.asc / && export GNUPGHOME="$(mktemp -d)" / && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$GPG_KEY" / && gpg --batch --verify python.tar.xz.asc python.tar.xz / && rm -r "$GNUPGHOME" python.tar.xz.asc / && mkdir -p /usr/src/python / && tar -xJC /usr/src/python --strip-components=1 -f python.tar.xz / && rm python.tar.xz / / && cd /usr/src/python / && ./configure --enable-shared --enable-unicode=ucs4 / && make -j$(nproc) / && make install / && ldconfig / && pip3 install --no-cache-dir --upgrade --ignore-installed pip==$PYTHON_PIP_VERSION / && find /usr/local -depth / /( / /( -type d -a -name test -o -name tests /) / -o / /( -type f -a -name '*.pyc' -o -name '*.pyo' /) / /) -exec rm -rf '{}' + / && rm -rf /usr/src/python ~/.cache # make some useful symlinks that are expected to exist RUN cd /usr/local/bin / && ln -s easy_install-3.5 easy_install / && ln -s idle3 idle / && ln -s pydoc3 pydoc / && ln -s python3 python / && ln -s python3-config python-config CMD ["python3"]
Create an image through Dockerfile and replace it with your own name:
runoob@runoob:~/python$ docker build -t python:3.5 .
After the creation is completed, we can find the image we just created in the local image list:
runoob@runoob:~/python$ docker images python:3.5 REPOSITORY TAG IMAGE ID CREATED SIZE python 3.5 045767ddf24a 9 days ago 684.1 MB
Use python mirror
Create a helloworld.py file in the ~/python/myapp directory with the following code:
#!/usr/bin/python print("Hello, World!");
Run container
runoob@runoob:~/python$ docker run -v $PWD/myapp:/usr/src/myapp -w /usr/src/myapp python:3.5 python helloworld.py
Command description:
-v $PWD/myapp:/usr/src/myapp: Mount myapp in the current directory on the host to /usr/src/myapp in the container.
-w /usr/src/myapp: Specify the /usr/src/myapp directory of the container as the working directory.
python helloworld.py: Use the container's python command to execute the helloworld.py file in the working directory.
Output results:
Hello, World!
Recommended site search: dual-line host rental, domain name registration, server hosting, how to query domain name registration number, US vps server, com domain name, free domain name registration platform, free virtual host, vps server, no registration,
发表评论