Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ARG PYTHON_VERSION=3.9.18
- FROM --platform=linux/amd64 amazonlinux:2 AS base
- ARG PYTHON_VERSION
- RUN yum install -y gcc openssl11-devel bzip2-devel libffi-devel tar gzip wget make && \
- wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz && \
- tar xzf Python-${PYTHON_VERSION}.tgz && \
- cd Python-${PYTHON_VERSION} && \
- ./configure --enable-optimizations && \
- make install
- RUN yum install -y python3 tar gzip
- RUN yum -y update && yum -y install \
- curl \
- java-1.8.0-openjdk \
- java-1.8.0-openjdk-devel \
- && yum clean all
- ENV VIRTUAL_ENV=/opt/venv
- RUN python3 -m venv $VIRTUAL_ENV --copies
- RUN cp -r /usr/local/lib/python3.9/* $VIRTUAL_ENV/lib/python3.9/
- # Ensure our python3 executable references the virtual environment
- ENV PATH="$VIRTUAL_ENV/bin:$PATH"
- ENV PATH="${PATH}:/root/.local/bin"
- # RUN python3 -m pip poetry
- RUN python3 -m pip install --upgrade pip && \
- python3 -m pip install venv-pack==0.2.0
- # ENV PATH="$PATH:/root/.local/bin"
- WORKDIR /app
- COPY . .
- FROM base as build-poetry
- ARG PYTHON_VERSION
- # RUN export PATH="$HOME/.poetry/bin:$PATH"
- RUN poetry self add poetry-plugin-bundle && \
- poetry bundle venv dist/bundle
- RUN mkdir /output && \
- venv-pack -o /output/pyspark_${PYTHON_VERSION}.tar.gz --prefix dist/bundle --python-prefix /home/hadoop/environment
- FROM scratch as export-poetry
- ARG PYTHON_VERSION
- COPY --from=build-poetry /output/pyspark_${PYTHON_VERSION}.tar.gz /
Advertisement
Add Comment
Please, Sign In to add comment