Fhrozen's picture
add initial files
44d59d0
FROM ubuntu:latest
LABEL maintainer="Nelson Yalta <nyalta21@gmail.com>"
ENV DEBIAN_FRONTEND=noninteractive
ARG USERNAME=user
ARG USER_ID=1000
ARG GROUP_ID=1000
RUN apt-get update && \
apt-get -y install --no-install-recommends \
bc \
build-essential \
cmake \
curl \
gawk \
gfortran \
git \
gnupg2 \
libffi-dev \
libjpeg-dev \
libtool \
libncurses5-dev \
python3-full \
python3-dev \
python3-pip \
software-properties-common \
sudo \
unzip \
wget \
zip \
zlib1g-dev \
&& \
apt-get autoremove -y && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /tmp/* && \
mkdir -p /workspaces
RUN if [ -z "$(getent group ${GROUP_ID})" ]; then \
groupadd -g ${GROUP_ID} "${USERNAME}"; \
else \
existing_group="$(getent group $GROUP_ID | cut -d: -f1)"; \
if [ "${existing_group}" != "${USERNAME}" ]; then \
groupmod -n "${USERNAME}" "${existing_group}"; \
fi; \
fi && \
if [ -z "$(getent passwd $USER_ID)" ]; then \
useradd -m -u ${USER_ID} -g ${GROUP_ID} "${USERNAME}"; \
else \
existing_user="$(getent passwd ${USER_ID} | cut -d: -f1)"; \
if [ "${existing_user}" != "${USERNAME}" ]; then \
usermod -l "${USERNAME}" -d /home/"${USERNAME}" -m "${existing_user}"; \
fi; \
fi && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers && \
sed -i 's/#force_color_prompt=yes/force_color_prompt=yes/g' /home/${USERNAME}/.bashrc && \
chown -R ${USERNAME}:${USERNAME} /workspaces
USER ${USERNAME}
# Latest version of git
ENV TZ=Etc/UTC
ENV PATH=/workspaces/venv/bin:${PATH}
ENV STREAMLIT_SERVER_ADDRESS=localhost
RUN python3 -m venv /workspaces/venv
WORKDIR /workspaces