mirror of
https://github.com/luxfi/torus-ml.git
synced 2026-10-30 15:15:23 +00:00
48 lines
1.3 KiB
Docker
48 lines
1.3 KiB
Docker
# syntax=docker/dockerfile:1
|
|
ARG UBUNTU_BASE=20.04
|
|
FROM ubuntu:${UBUNTU_BASE}
|
|
|
|
ENV TZ=Europe/Paris
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
|
|
RUN mkdir /pkg && mkdir /app
|
|
WORKDIR /pkg
|
|
COPY docker/release_resources/release_requirements.txt .
|
|
COPY ./pkg/*.whl .
|
|
|
|
RUN --mount=type=secret,id=build-env \
|
|
. /run/secrets/build-env && \
|
|
apt-get update && apt-get upgrade --no-install-recommends -y && \
|
|
apt-get install --no-install-recommends -y \
|
|
build-essential \
|
|
python3-pip \
|
|
python3.8 \
|
|
python3.8-dev \
|
|
python3.8-tk \
|
|
python-is-python3 \
|
|
git \
|
|
graphviz* && \
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
python3 -m pip install --no-cache-dir --upgrade pip wheel setuptools && \
|
|
echo "export MPLBACKEND=TkAgg" >> /root/.bashrc && \
|
|
python3 -m pip install --no-cache-dir "$(ls ./*.whl)" && \
|
|
python3 -m pip install --no-cache-dir -r release_requirements.txt
|
|
|
|
WORKDIR /app
|
|
COPY docker/release_resources/entry_point.sh ./entry_point.sh
|
|
RUN mkdir /data
|
|
|
|
# Add a non-root user and group
|
|
RUN groupadd -g 10001 grp02 && \
|
|
useradd -u 10000 -g grp02 usr01 && \
|
|
chown -R usr01:grp02 /data /app /pkg && \
|
|
chmod -R g+rw /data /app /pkg
|
|
|
|
# Switch to the non-root user
|
|
USER usr01:grp02
|
|
|
|
WORKDIR /data
|
|
VOLUME [ "/data" ]
|
|
|
|
CMD ["/bin/bash", "-i", "/app/entry_point.sh"]
|