|
FROM ubuntu:22.04 |
|
|
|
ENV DEBIAN_FRONTEND=noninteractive |
|
ENV TERM=xterm-256color |
|
ENV NPM_CONFIG_PREFIX=/home/Draco/.npm-global |
|
ENV PATH=$PATH:/home/Draco/.npm-global/bin |
|
|
|
|
|
RUN mkdir -p /etc/sudoers.d && \ |
|
useradd -m -u 1000 -s /bin/bash Draco && \ |
|
echo "Draco ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/draco && \ |
|
chmod 440 /etc/sudoers.d/draco && \ |
|
mkdir -p /home/Draco/.npm-global && \ |
|
chown -R Draco:Draco /home/Draco/.npm-global |
|
|
|
|
|
RUN apt-get update && \ |
|
apt-get install -y curl gnupg && \ |
|
apt-get clean |
|
|
|
RUN curl -sL https://deb.nodesource.com/setup_20.x | bash - |
|
|
|
|
|
RUN apt-get install -y --no-install-recommends \ |
|
nodejs \ |
|
ffmpeg \ |
|
python3 python3-pip python3-venv \ |
|
build-essential \ |
|
tmate \ |
|
openssh-client \ |
|
neofetch \ |
|
git \ |
|
wget \ |
|
vim \ |
|
nano \ |
|
unzip \ |
|
zip \ |
|
htop \ |
|
net-tools \ |
|
iputils-ping \ |
|
dnsutils \ |
|
tmux \ |
|
screen \ |
|
jq \ |
|
ca-certificates \ |
|
software-properties-common \ |
|
sqlite3 \ |
|
libsqlite3-dev \ |
|
libssl-dev \ |
|
libffi-dev \ |
|
libxml2-dev \ |
|
libxslt1-dev \ |
|
libjpeg-dev \ |
|
zlib1g-dev \ |
|
libpng-dev \ |
|
libwebp-dev \ |
|
pkg-config \ |
|
rsync \ |
|
lsof \ |
|
sudo \ |
|
gnupg \ |
|
openssl \ |
|
tree \ |
|
mc \ |
|
python3-dev \ |
|
python3-distutils \ |
|
python3-setuptools \ |
|
cron \ |
|
aria2 \ |
|
telnet \ |
|
expect && \ |
|
apt-get clean && \ |
|
rm -rf /var/lib/apt/lists/* |
|
|
|
|
|
RUN pip3 install --no-cache-dir \ |
|
pytelegrambotapi \ |
|
requests \ |
|
beautifulsoup4 \ |
|
lxml \ |
|
flask \ |
|
httpx \ |
|
aiohttp \ |
|
schedule |
|
|
|
|
|
RUN mkdir -p /root/.ssh && \ |
|
ssh-keygen -t rsa -f /root/.ssh/id_rsa -N '' && \ |
|
chmod 700 /root/.ssh && \ |
|
chmod 600 /root/.ssh/id_rsa |
|
|
|
|
|
RUN if [ ! -c /dev/ptmx ]; then \ |
|
mknod /dev/ptmx c 5 2 && chmod 666 /dev/ptmx ; \ |
|
fi |
|
|
|
|
|
RUN mkdir -p /dev/pts |
|
|
|
|
|
RUN mkdir -p /app && \ |
|
echo "Tmate Session Running..." > /app/index.html && \ |
|
chown -R Draco:Draco /app |
|
|
|
WORKDIR /app |
|
|
|
|
|
USER Draco |
|
|
|
|
|
RUN node -v && npm -v && python3 --version && ffmpeg -version |
|
|
|
|
|
CMD python3 -m http.server 7860 & tmate -F || echo "tmate exited or failed" |