mirror of
https://github.com/EpicMorg/docker-scripts.git
synced 2025-02-14 23:58:52 +03:00
make - autocommit
This commit is contained in:
parent
44f0b9f6db
commit
37d0884806
7
Makefile
7
Makefile
@ -2408,4 +2408,9 @@ bundle-p4:
|
|||||||
@echo "======================================="
|
@echo "======================================="
|
||||||
make ecosystem-perforce-base-images
|
make ecosystem-perforce-base-images
|
||||||
make ecosystem-perforce-proxy-images
|
make ecosystem-perforce-proxy-images
|
||||||
|
|
||||||
|
bundle-python:
|
||||||
|
@echo "=============================================="
|
||||||
|
@echo "===== Building EpicMorg Python images ====="
|
||||||
|
@echo "=============================================="
|
||||||
|
cd `pwd`/linux/ecosystem/epicmorg/debian/12-bookworm/python/3.13 && pwd && make build && make deploy
|
@ -230,6 +230,17 @@ ARG OPENSSL_33_DOWNLOAD_URL=https://www.openssl.org/source/openssl-${OPENSSL_33_
|
|||||||
ARG OPENSSL_33_TEMP=/tmp/openssl-${OPENSSL_33_VERSION}.tar.gz
|
ARG OPENSSL_33_TEMP=/tmp/openssl-${OPENSSL_33_VERSION}.tar.gz
|
||||||
ARG OPENSSL_33_TEMP_SRC=/tmp/openssl-${OPENSSL_33_VERSION}
|
ARG OPENSSL_33_TEMP_SRC=/tmp/openssl-${OPENSSL_33_VERSION}
|
||||||
|
|
||||||
|
# OpenSSL 3.4.0
|
||||||
|
ENV OPENSSL_34_VERSION=3.4.0
|
||||||
|
ENV OPENSSL_34_DIR=${EMG_LOCAL_BASE_DIR}/openssl/${OPENSSL_34_VERSION}
|
||||||
|
ENV OPENSSL_34_BIN_DIR=${OPENSSL_34_DIR}/bin
|
||||||
|
ENV OPENSSL_34_INC_DIR=${OPENSSL_34_DIR}/include
|
||||||
|
ENV OPENSSL_34_LIB_DIR=${OPENSSL_34_DIR}/lib64
|
||||||
|
ENV OPENSSL_34_SRC_DIR=/usr/local/src/openssl/${OPENSSL_34_VERSION}
|
||||||
|
ARG OPENSSL_34_DOWNLOAD_URL=https://www.openssl.org/source/openssl-${OPENSSL_34_VERSION}.tar.gz
|
||||||
|
ARG OPENSSL_34_TEMP=/tmp/openssl-${OPENSSL_34_VERSION}.tar.gz
|
||||||
|
ARG OPENSSL_34_TEMP_SRC=/tmp/openssl-${OPENSSL_34_VERSION}
|
||||||
|
|
||||||
# LibreSSL
|
# LibreSSL
|
||||||
ENV LIBRESSL_VERSION=4.0.0
|
ENV LIBRESSL_VERSION=4.0.0
|
||||||
ENV LIBRESSL_DIR=${EMG_LOCAL_BASE_DIR}/libressl/${LIBRESSL_VERSION}
|
ENV LIBRESSL_DIR=${EMG_LOCAL_BASE_DIR}/libressl/${LIBRESSL_VERSION}
|
||||||
@ -998,6 +1009,39 @@ RUN tar -xzf ${OPENSSL_33_TEMP} --directory /tmp && \
|
|||||||
echo ${OPENSSL_33_LIB_DIR} >> ${LD_CONF_DIR}/OpenSSL.conf && \
|
echo ${OPENSSL_33_LIB_DIR} >> ${LD_CONF_DIR}/OpenSSL.conf && \
|
||||||
ldconfig
|
ldconfig
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# OpenSSL 3.4.0
|
||||||
|
##################################################################
|
||||||
|
RUN mkdir -p ${OPENSSL_34_DIR} ${OPENSSL_34_SRC_DIR}
|
||||||
|
ADD ${OPENSSL_34_DOWNLOAD_URL} /tmp
|
||||||
|
|
||||||
|
RUN tar -xzf ${OPENSSL_34_TEMP} --directory /tmp && \
|
||||||
|
cp -rfv ${OPENSSL_34_TEMP_SRC}/* ${OPENSSL_34_SRC_DIR} && \
|
||||||
|
ln -sf ${OPENSSL_34_SRC_DIR} ${OPENSSL_34_DIR}/src && \
|
||||||
|
cd ${OPENSSL_34_TEMP_SRC} && \
|
||||||
|
./config \
|
||||||
|
zlib \
|
||||||
|
--with-zlib-include=${ZLIB_DIR}/include \
|
||||||
|
--with-zlib-lib=${ZLIB_DIR}/lib \
|
||||||
|
--with-zstd-include=${ZSTD_DIR}/include \
|
||||||
|
--with-zstd-lib=${ZSTD_DIR}/lib \
|
||||||
|
enable-ktls \
|
||||||
|
enable-ec_nistp_64_gcc_128 \
|
||||||
|
enable-egd \
|
||||||
|
enable-fips \
|
||||||
|
enable-ssl-trace\
|
||||||
|
enable-trace \
|
||||||
|
threads \
|
||||||
|
sctp \
|
||||||
|
--release \
|
||||||
|
--prefix=${OPENSSL_34_DIR} \
|
||||||
|
&& \
|
||||||
|
make -j$(nproc) && \
|
||||||
|
make -j$(nproc) install && \
|
||||||
|
echo "# OpenSSL support" >> ${LD_CONF_DIR}/OpenSSL.conf && \
|
||||||
|
echo ${OPENSSL_34_LIB_DIR} >> ${LD_CONF_DIR}/OpenSSL.conf && \
|
||||||
|
ldconfig
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# LibreSSL
|
# LibreSSL
|
||||||
##################################################################
|
##################################################################
|
||||||
|
@ -0,0 +1,116 @@
|
|||||||
|
FROM epicmorg/debian:bookworm-develop as builder
|
||||||
|
|
||||||
|
# /etc/ld.so.conf.d/
|
||||||
|
ARG LD_CONF_DIR=/etc/ld.so.conf.d/
|
||||||
|
|
||||||
|
# python 3.13
|
||||||
|
ENV PYTHON_VERSION=3.13.2
|
||||||
|
ENV PYTHON_DIR=${EMG_LOCAL_BASE_DIR}/python/${PYTHON_VERSION}
|
||||||
|
ARG PYTHON_BIN_DIR=${PYTHON_DIR}/bin
|
||||||
|
ARG PYTHON_SRC_DIR=${PYTHON_DIR}/src
|
||||||
|
ARG PYTHON_DOWNLOAD_URL=https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz
|
||||||
|
ARG PYTHON_TEMP=/tmp/Python-${PYTHON_VERSION}.tgz
|
||||||
|
|
||||||
|
RUN apt update && apt install -y \
|
||||||
|
build-essential \
|
||||||
|
libssl-dev \
|
||||||
|
zlib1g-dev \
|
||||||
|
libncurses5-dev \
|
||||||
|
libncursesw5-dev \
|
||||||
|
libreadline-dev \
|
||||||
|
libsqlite3-dev \
|
||||||
|
libgdbm-dev \
|
||||||
|
libdb5.3-dev \
|
||||||
|
libbz2-dev \
|
||||||
|
libexpat1-dev \
|
||||||
|
liblzma-dev \
|
||||||
|
libffi-dev \
|
||||||
|
uuid-dev \
|
||||||
|
tk-dev
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# CMake
|
||||||
|
##################################################################
|
||||||
|
RUN mkdir -p ${PYTHON_DIR} ${PYTHON_SRC_DIR}
|
||||||
|
ADD ${PYTHON_DOWNLOAD_URL} /tmp
|
||||||
|
|
||||||
|
RUN tar -xvzf ${PYTHON_TEMP} --strip-components=1 --directory ${PYTHON_SRC_DIR}
|
||||||
|
|
||||||
|
ENV OPENSSL_ROOT=${OPENSSL_34_DIR}
|
||||||
|
ENV LD_LIBRARY_PATH=${OPENSSL_ROOT}/lib64:$LD_LIBRARY_PATH
|
||||||
|
|
||||||
|
RUN cd ${PYTHON_SRC_DIR} && \
|
||||||
|
./configure \
|
||||||
|
--prefix=${PYTHON_DIR} \
|
||||||
|
--enable-optimizations \
|
||||||
|
--enable-option-checking=fatal \
|
||||||
|
--with-lto \
|
||||||
|
--enable-loadable-sqlite-extensions \
|
||||||
|
--with-ensurepip=install \
|
||||||
|
--enable-profiling \
|
||||||
|
--with-system-expat \
|
||||||
|
--enable-option-checking=fatal \
|
||||||
|
--with-computed-gotos \
|
||||||
|
--with-pydebug \
|
||||||
|
--with-trace-refs \
|
||||||
|
--with-assertions \
|
||||||
|
--with-valgrind \
|
||||||
|
--with-static-libpython \
|
||||||
|
--with-openssl-rpath=auto \
|
||||||
|
--with-openssl=${OPENSSL_34_DIR} \
|
||||||
|
LDFLAGS="-Wl,-rpath,${OPENSSL_34_DIR}/lib64" \
|
||||||
|
CPPFLAGS="-I${OPENSSL_34_DIR}/include"
|
||||||
|
|
||||||
|
RUN make -j$(nproc) && \
|
||||||
|
make altinstall
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
##################################################################
|
||||||
|
##################################################################
|
||||||
|
# Final Layer
|
||||||
|
##################################################################
|
||||||
|
##################################################################
|
||||||
|
##################################################################
|
||||||
|
FROM epicmorg/debian:bookworm
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# Python 3.13
|
||||||
|
##################################################################
|
||||||
|
ENV PYTHON_VERSION=3.13.2
|
||||||
|
ENV PYTHON_DIR=${EMG_LOCAL_BASE_DIR}/python/${PYTHON_VERSION}
|
||||||
|
ARG PYTHON_BIN_DIR=${PYTHON_DIR}/bin
|
||||||
|
ARG PYTHON_SRC_DIR=${PYTHON_DIR}/src
|
||||||
|
|
||||||
|
RUN apt-get remove -y python3-pip
|
||||||
|
|
||||||
|
COPY etc/apt/preferences.d /etc/apt/preferences.d
|
||||||
|
COPY --from=builder ${OPENSSL_34_DIR}/ ${OPENSSL_34_DIR}/
|
||||||
|
|
||||||
|
RUN mv ${PYTHON_SRC_DIR} /usr/local/src/${PYTHON_VERSION} && \
|
||||||
|
ln -sfv /usr/local/src/${PYTHON_VERSION} ${PYTHON_SRC_DIR} \
|
||||||
|
update-alternatives --install /usr/bin/pip3 pip3 ${PYTHON_DIR}/bin/pip3.13 1 && \
|
||||||
|
update-alternatives --install /usr/bin/pip pip ${PYTHON_DIR}/bin/pip3.13 1 && \
|
||||||
|
update-alternatives --install /usr/bin/python python ${PYTHON_DIR}/bin/python3.13 1 && \
|
||||||
|
update-alternatives --install /usr/bin/python3 python3 ${PYTHON_DIR}/bin/python3.13 1
|
||||||
|
|
||||||
|
ENV PATH="${PYTHON_BIN_DIR}:${PATH}"
|
||||||
|
RUN echo "=============================================" && \
|
||||||
|
echo python3.13 --version && \
|
||||||
|
echo python3 --version && \
|
||||||
|
echo python --version && \
|
||||||
|
echo pip3 --version && \
|
||||||
|
echo pip --version && \
|
||||||
|
echo "============================================="
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# cleanup
|
||||||
|
##################################################################
|
||||||
|
RUN echo "clean up" && \
|
||||||
|
apt-get clean -y && \
|
||||||
|
apt-get autoclean -y && \
|
||||||
|
rm -rfv /var/lib/apt/lists/* && \
|
||||||
|
rm -rfv /var/cache/apt/archives/*.deb && \
|
||||||
|
rm -rfv /root/tmp/* && \
|
||||||
|
rm -rfv /tmp/*
|
||||||
|
|
||||||
|
RUN updatedb
|
@ -0,0 +1,36 @@
|
|||||||
|
PIP_BREAK_SYSTEM_PACKAGES=1
|
||||||
|
|
||||||
|
all: app
|
||||||
|
|
||||||
|
app:
|
||||||
|
make build
|
||||||
|
make deploy
|
||||||
|
make clean
|
||||||
|
|
||||||
|
build:
|
||||||
|
kaniko-wrapper --version
|
||||||
|
|
||||||
|
dry:
|
||||||
|
make dry-run
|
||||||
|
|
||||||
|
test:
|
||||||
|
make dry-run
|
||||||
|
|
||||||
|
dry-run:
|
||||||
|
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
|
||||||
|
|
||||||
|
build-compose:
|
||||||
|
docker-compose build --compress --parallel --progress plain
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
|
||||||
|
|
||||||
|
deploy-compose:
|
||||||
|
docker-compose push
|
||||||
|
|
||||||
|
clean:
|
||||||
|
docker container prune -f
|
||||||
|
docker image prune -f
|
||||||
|
docker network prune -f
|
||||||
|
docker volume prune -f
|
||||||
|
docker system prune -af
|
@ -0,0 +1,6 @@
|
|||||||
|
#version: '3'
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: "epicmorg/debian:bookworm-python-3.13"
|
||||||
|
build:
|
||||||
|
context: .
|
@ -0,0 +1,3 @@
|
|||||||
|
Package: python-*
|
||||||
|
Pin: release *
|
||||||
|
Pin-Priority: -1
|
@ -0,0 +1,3 @@
|
|||||||
|
Package: python2-*
|
||||||
|
Pin: release *
|
||||||
|
Pin-Priority: -1
|
@ -0,0 +1,3 @@
|
|||||||
|
Package: python3-*
|
||||||
|
Pin: release *
|
||||||
|
Pin-Priority: -1
|
Loading…
x
Reference in New Issue
Block a user