Creating Dockerfile
FROM ubuntu:24.04 as builder
ADD https://www.python.org/ftp/python/3.13.9/Python-3.13.9.tgz /tmp/
RUN sed -i [email protected]@mirrors.tuna.tsinghua.edu.cn@ /etc/apt/sources.list.d/ubuntu.sources && \
sed -i [email protected]@mirrors.tuna.tsinghua.edu.cn@ /etc/apt/sources.list.d/ubuntu.sources && \
apt-get -qy update && \
DEBIAN_FRONTEND=noninteractive apt-get -qy install --no-install-recommends \
build-essential \
libbz2-dev \
libncurses5-dev \
libncursesw5-dev \
libgdbm-dev \
libssl-dev \
liblzma-dev \
libsqlite3-dev \
tk-dev \
uuid-dev \
libreadline-dev \
zlib1g-dev \
libffi-dev \
wget \
curl \
llvm \
xz-utils \
libxml2-dev \
libxmlsec1-dev \
libffi-dev \
libdb-dev && \
cd /tmp/ && tar xf Python-3.13.9.tgz && \
cd Python-3.13.9 && \
./configure --prefix=/python3 --enable-optimizations --with-ssl-default-suites=openssl && \
make -j 4 && \
make install
FROM ubuntu:24.04
COPY --from=builder /python3 /python3
RUN sed -i [email protected]@mirrors.tuna.tsinghua.edu.cn@ /etc/apt/sources.list.d/ubuntu.sources && \
sed -i [email protected]@mirrors.tuna.tsinghua.edu.cn@ /etc/apt/sources.list.d/ubuntu.sources && \
apt-get -qy update && \
DEBIAN_FRONTEND=noninteractive apt-get -qy --no-install-recommends install vim wget curl tzdata && \
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone && \
rm -rf /usr/bin/python3 && \
ln -s /python3/bin/python3 /usr/bin/python3 && \
ln -s /python3/bin/pip3 /usr/bin/pip3 && \
apt-get autoclean && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
Creating build.sh
#!/bin/bash
docker build -t reg.caiwu.corp/basic/python:ubuntu24.04-python-3.13.9 .
Executing build.sh
$ sh build.sh